.fade-enter-active,.fade-leave-active{transition:opacity .5s ease-in-out,transform .5s ease-in-out}.fade-enter-from,.fade-leave-to{opacity:0;transform:translateY(20px)}.fade-enter-to,.fade-leave-from{opacity:1;transform:translateY(0)}.v-toast--fade-out{animation-name:fadeOut}@keyframes fadeInDown{0%{opacity:0;transform:translate3d(0,-100%,0)}to{opacity:1;transform:none}}.v-toast--fade-in-down{animation-name:fadeInDown}@keyframes fadeInUp{0%{opacity:0;transform:translate3d(0,100%,0)}to{opacity:1;transform:none}}.v-toast--fade-in-up{animation-name:fadeInUp}.fade-enter-active,.fade-leave-active{transition:opacity .15s ease-out}.fade-enter,.fade-leave-to{opacity:0}.v-toast{position:fixed;display:flex;top:0;bottom:0;left:0;right:0;padding:2em;overflow:hidden;z-index:1090;pointer-events:none}.v-toast__item{display:inline-flex;align-items:center;animation-duration:.15s;margin:.5em 0;box-shadow:0 1px 4px rgba(0,0,0,.12),0 0 6px rgba(0,0,0,.04);border-radius:.25em;pointer-events:auto;opacity:.92;color:#fff;min-height:3em;cursor:pointer}.v-toast__item--success{background-color:#28a745}.v-toast__item--info{background-color:#17a2b8}.v-toast__item--warning{background-color:#ffc107}.v-toast__item--error{background-color:#dc3545}.v-toast__item--default{background-color:#343a40}.v-toast__item--warning{color:#000}.v-toast__item.v-toast__item--bottom,.v-toast__item.v-toast__item--top{align-self:center}.v-toast__item.v-toast__item--bottom-right,.v-toast__item.v-toast__item--top-right{align-self:flex-end}.v-toast__item.v-toast__item--bottom-left,.v-toast__item.v-toast__item--top-left{align-self:flex-start}.v-toast__text{margin:0;padding:.5em 1em;word-break:break-word}.v-toast__icon{display:none}.v-toast.v-toast--top{flex-direction:column}.v-toast.v-toast--bottom{flex-direction:column-reverse}.v-toast.v-toast--custom-parent{position:absolute}@media screen and (max-width:768px){.v-toast{padding:0;position:fixed!important}}.v-toast__item{opacity:1;min-height:4em}.v-toast__item .v-toast__text{padding:1.5em 1em}.v-toast__item .v-toast__icon{display:block;width:27px;min-width:27px;height:27px;margin-left:1em;background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 45.999 45.999'%3E%3Cpath fill='%23fff' d='M39.264 6.736c-8.982-8.981-23.545-8.982-32.528 0-8.982 8.982-8.981 23.545 0 32.528 8.982 8.98 23.545 8.981 32.528 0 8.981-8.983 8.98-23.545 0-32.528zM25.999 33a3 3 0 1 1-6 0V21a3 3 0 1 1 6 0v12zm-3.053-17.128c-1.728 0-2.88-1.224-2.844-2.735-.036-1.584 1.116-2.771 2.879-2.771 1.764 0 2.88 1.188 2.917 2.771-.001 1.511-1.152 2.735-2.952 2.735z'/%3E%3C/svg%3E") no-repeat}[dir=rtl] .v-toast__item .v-toast__icon{margin-left:unset;margin-right:1em}.v-toast__item.v-toast__item--success .v-toast__icon{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52'%3E%3Cpath fill='%23fff' d='M26 0C11.664 0 0 11.663 0 26s11.664 26 26 26 26-11.663 26-26S40.336 0 26 0zm14.495 17.329-16 18a1.997 1.997 0 0 1-2.745.233l-10-8a2 2 0 0 1 2.499-3.124l8.517 6.813L37.505 14.67a2.001 2.001 0 0 1 2.99 2.659z'/%3E%3C/svg%3E") no-repeat}.v-toast__item.v-toast__item--error .v-toast__icon{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 51.976 51.976'%3E%3Cpath fill='%23fff' d='M44.373 7.603c-10.137-10.137-26.632-10.138-36.77 0-10.138 10.138-10.137 26.632 0 36.77s26.632 10.138 36.77 0c10.137-10.138 10.137-26.633 0-36.77zm-8.132 28.638a2 2 0 0 1-2.828 0l-7.425-7.425-7.778 7.778a2 2 0 1 1-2.828-2.828l7.778-7.778-7.425-7.425a2 2 0 1 1 2.828-2.828l7.425 7.425 7.071-7.071a2 2 0 1 1 2.828 2.828l-7.071 7.071 7.425 7.425a2 2 0 0 1 0 2.828z'/%3E%3C/svg%3E") no-repeat}.v-toast__item.v-toast__item--warning .v-toast__icon{background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 52 52' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M49.466 41.26 29.216 6.85c-.69-1.16-1.89-1.85-3.22-1.85-1.32 0-2.53.69-3.21 1.85L2.536 41.26c-.71 1.2-.72 2.64-.03 3.85.68 1.18 1.89 1.89 3.24 1.89h40.51c1.35 0 2.56-.71 3.23-1.89.7-1.21.69-2.65-.02-3.85zm-25.53-21.405h3.381v3.187l-.724 8.92H24.66l-.725-8.92v-3.187zm2.97 17.344a1.712 1.712 0 0 1-1.267.543c-.491 0-.914-.181-1.268-.543a1.788 1.788 0 0 1-.531-1.297c0-.502.176-.935.53-1.297a1.712 1.712 0 0 1 1.269-.544c.49 0 .914.181 1.268.544s.53.795.53 1.297c0 .503-.176.934-.53 1.297z'/%3E%3C/svg%3E") no-repeat}.v-toast__container{top:80px!important;z-index:9999!important}.v-toast__item{border-radius:var(--radius-md)!important;padding:12px 16px!important;box-shadow:0 2px 8px rgba(0,0,0,.2)!important;backdrop-filter:blur(10px);font-family:inherit!important;font-size:var(--font-size-sm)!important;min-width:280px!important;border:1px solid!important;transition:var(--transition-all)!important}.v-toast__item--success{background:rgba(16,185,38,.3)!important;border-color:rgba(16,185,38,.25)!important;color:#e5e7eb!important}.v-toast__item--success .v-toast__icon{color:var(--color-success)!important}.v-toast__item--error{background:rgba(239,68,68,.3)!important;border-color:rgba(245,18,18,.25)!important;color:#e5e7eb!important}.v-toast__item--error .v-toast__icon{color:var(--color-error)!important}.v-toast__item--warning{background:var(--color-warning-alpha-10)!important;border-color:var(--color-warning-alpha-20)!important;color:#e5e7eb!important}.v-toast__item--warning .v-toast__icon{color:var(--color-warning)!important}.v-toast__item--info{background:var(--color-primary-alpha-10)!important;border-color:var(--color-primary-alpha-20)!important;color:#e5e7eb!important}.v-toast__item--info .v-toast__icon{color:#3b82f6!important}.v-toast__item--default{background:hsla(0,0%,100%,.05)!important;border-color:hsla(0,0%,100%,.1)!important;color:#e5e7eb!important}.v-toast__item--default .v-toast__icon{color:#9ca3af!important}.v-toast__icon{margin-right:10px!important;font-size:var(--font-size-base)!important;flex-shrink:0!important}.v-toast__text{font-weight:400!important;line-height:1.4!important;flex:1!important;color:inherit!important}.v-toast__item .v-toast__item__close{opacity:.5!important;transition:opacity var(--transition-base)!important;color:currentColor!important;font-size:var(--font-size-sm)!important;cursor:pointer!important;background:transparent!important;border:none!important;padding:2px 6px!important;margin-left:8px!important}.v-toast__item .v-toast__item__close:hover{opacity:.8!important}.v-toast__item.v-toast--fade-enter-active,.v-toast__item.v-toast--fade-leave-active{transition:var(--transition-all)!important}.v-toast__item.v-toast--fade-enter-from,.v-toast__item.v-toast--fade-leave-to{opacity:0!important;transform:translateY(-10px)!important}@media (max-width:768px){.v-toast__container{top:20px!important;right:10px!important;left:10px!important}.v-toast__item{padding:10px 14px!important;font-size:.8125rem!important;min-width:auto!important}.v-toast__icon{font-size:var(--font-size-sm)!important}}.app-container{background-color:var(--surface-base);background-size:cover;background-position:50%;background-attachment:fixed;min-height:100vh;position:relative}.app-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:var(--color-bg-overlay-light);z-index:-1}.content-container{background-color:var(--surface-raised);backdrop-filter:blur(10px);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);box-shadow:var(--shadow-md);padding:2rem}.card{background-color:var(--color-bg-content-secondary);border-radius:var(--radius-md);border:1px solid var(--color-border-light);padding:1.5rem;color:var(--color-text-primary)}.page-bg-layer{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:50%;background-attachment:fixed;z-index:0}.page-bg-layer.fade-transition{transition:opacity .8s ease-in-out}.page-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.85);backdrop-filter:blur(15px);z-index:1}.page-overlay.hidden{display:none}.page-content{position:relative;z-index:2;background:rgba(0,0,0,.8);backdrop-filter:blur(15px);border:1px solid var(--color-border-light);box-shadow:0 20px 60px rgba(0,0,0,.5)}.page-content.static-bg-active{background:transparent;backdrop-filter:none;border-color:transparent;box-shadow:none}.form-input{flex:1;min-width:200px;min-height:var(--input-height-md);background:var(--surface-interactive);border:1px solid var(--color-border-medium);border-radius:var(--radius-sm);padding:0 1rem;color:var(--color-text-primary);font-size:.9rem;transition:var(--transition-all);width:100%;display:block;box-sizing:border-box}.form-input:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.form-input:disabled{opacity:.5;cursor:not-allowed}.form-input::-moz-placeholder{color:var(--color-text-muted)}.form-input::placeholder{color:var(--color-text-muted)}.form-label{display:block;font-size:.9rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:.5rem}.input-group{gap:.75rem;align-items:center}.form-help{font-size:.8rem;margin-top:.25rem;display:flex;align-items:center;gap:.5rem}select{border-color:var(--color-border-medium)}select,select option{background-color:var(--color-bg-content-secondary);color:var(--color-text-primary)}.settings-card{background-color:hsla(0,0%,100%,.05);border:1px solid var(--color-border-medium);border-radius:var(--radius-md);padding:1.5rem;margin-bottom:1.5rem}.card-title{font-size:1.1rem;font-weight:600;color:var(--color-text-primary);margin:0 0 1.25rem 0;padding-bottom:.75rem;border-bottom:1px solid var(--color-border-light)}.help-link{background:none;border:none;color:var(--color-primary);font-size:.8rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:var(--transition-base);padding:.25rem 0;margin-bottom:1rem}.help-link:hover{color:var(--color-primary-hover)}.help-content{margin-top:.75rem;padding:1rem;background:var(--surface-interactive);border:1px solid var(--color-border-light);border-radius:var(--radius-sm)}.help-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.help-list li{color:var(--color-text-secondary);font-size:.85rem;padding-left:1.5rem;position:relative}.help-list li:before{content:counter(list-item) ".";position:absolute;left:0;color:var(--color-primary);font-weight:600}.btn-primary{background-color:var(--surface-interactive);color:var(--color-text-primary);border-radius:var(--radius-sm);transition:var(--transition-all);border:none;padding:.75rem 1.5rem;font-weight:500;cursor:pointer}.btn-primary:hover{background-color:var(--color-primary-hover)}.btn-secondary{background-color:#6b7280;color:var(--color-text-primary);border-radius:var(--radius-sm);transition:var(--transition-all);border:none;padding:.75rem 1.5rem;font-weight:500;cursor:pointer}.btn-secondary:hover:not(:disabled){background-color:#4b5563}.btn-sm{padding:.5rem 1rem!important;font-size:.875rem}.btn-sm,.input-group .btn{min-height:var(--btn-height-md);height:var(--btn-height-md)}.input-group .btn{padding:.5rem 1rem}.btn-outline{background:var(--surface-interactive);color:var(--color-text-primary);border:1px solid var(--color-border-medium);border-radius:var(--radius-sm);transition:var(--transition-all);padding:.75rem 1.5rem;font-weight:500;cursor:pointer}.btn-outline:hover:not(:disabled){background-color:var(--surface-interactive)}.btn-danger{background-color:var(--color-error);color:var(--color-text-primary);border-radius:var(--radius-sm);transition:var(--transition-all);border:none;padding:.75rem 1.5rem;font-weight:500;cursor:pointer}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-test{min-width:100px;height:44px;padding:0 1.5rem;justify-content:center;font-weight:600;font-size:.9rem;border-radius:var(--radius-sm);transition:var(--transition-all);border:none;cursor:pointer;white-space:nowrap;background-color:grey}.btn-content,.btn-test{display:flex;align-items:center;gap:.5rem}.btn-text{white-space:nowrap}.btn-success{background:var(--color-success)}.btn-success:hover:not(:disabled){background:#218838}.btn-warning{background:var(--color-warning)}.btn-warning:hover:not(:disabled){background:#d97706}.alert{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:1rem}.alert-info{background:var(--surface-raised);border:1px solid var(--color-primary);color:var(--color-primary)}.alert-success{background:rgba(16,185,129,.1);border:1px solid var(--color-success);color:var(--color-success)}.alert-danger{background:rgba(239,68,68,.1);border:1px solid var(--color-error);color:var(--color-error)}.tabs-navigation{display:flex;justify-content:center;margin-bottom:2rem;flex-wrap:wrap;gap:.5rem}.tab-button{background-color:var(--surface-interactive);border:1px solid var(--color-border-light);color:var(--color-text-muted);padding:.75rem 1.5rem;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-all);display:flex;align-items:center;gap:.5rem;font-size:.9rem}.tab-button.active,.tab-button:hover{background-color:var(--surface-hover);color:var(--color-text-primary)}.tab-button.active{border-color:var(--surface-hover);backdrop-filter:blur(200px)}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--surface-overlay);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:1000}.spinner{width:40px;height:40px;border:4px solid var(--color-border-medium);border-top:4px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.heading-primary{font-size:2.5rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.5rem}.heading-secondary{font-size:1.8rem;font-weight:600;color:var(--color-text-primary);margin-bottom:1rem}.heading-tertiary{font-size:1.2rem;font-weight:500;color:var(--color-text-primary);margin-bottom:.75rem}.text-muted{font-size:1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}body.no-blur *{backdrop-filter:none!important}:root{--color-primary:#636363;--color-primary-hover:#55575a;--color-primary-light:#60a5fa;--color-primary-dark:#1e40af;--color-success:#10b981;--color-success-hover:#059669;--color-success-light:#34d399;--color-warning:#f59e0b;--color-warning-hover:#d97706;--color-warning-light:#fbbf24;--color-error:#ef4444;--color-error-hover:#dc2626;--color-error-light:#f87171;--color-info:#616161;--color-info-hover:#424242;--color-info-light:#90a4ae;--surface-base:rgba(0,0,0,.6);--surface-raised:rgba(34,34,36,.9);--surface-elevated:rgba(0,0,0,.8);--surface-elevated-solid:#252525;--surface-overlay:rgba(0,0,0,.85);--surface-interactive:hsla(0,0%,100%,.1);--surface-hover:hsla(0,0%,100%,.15);--surface-hover-solid:#252525;--surface-glass-subtle:hsla(0,0%,100%,.05);--surface-glass-light:hsla(0,0%,100%,.08);--surface-glass-medium:hsla(0,0%,100%,.12);--surface-glass-strong:hsla(0,0%,100%,.2);--color-bg-primary:var(--surface-base);--color-bg-content:var(--surface-raised);--color-bg-content-secondary:rgba(45,55,72,.8);--color-bg-overlay-light:rgba(0,0,0,.6);--color-bg-overlay-heavy:var(--surface-overlay);--color-bg-interactive:var(--surface-interactive);--color-bg-active:var(--surface-hover);--color-text-primary:#f8fafc;--color-text-secondary:#f4f4f4;--color-text-tertiary:#94a3b8;--color-text-muted:#a1a1a1;--color-text-disabled:#878787;--color-text-inverse:#0f172a;--color-border-light:#444;--color-border-medium:#444;--color-border-heavy:#64748b;--color-border-focus:var(--color-primary);--alpha-05:0.05;--alpha-10:0.1;--alpha-15:0.15;--alpha-20:0.2;--alpha-30:0.3;--alpha-40:0.4;--alpha-50:0.5;--alpha-60:0.6;--alpha-70:0.7;--alpha-80:0.8;--alpha-90:0.9;--color-primary-alpha-10:rgba(59,130,246,.1);--color-primary-alpha-20:rgba(59,130,246,.2);--color-success-alpha-10:rgba(16,185,129,.1);--color-success-alpha-20:rgba(16,185,129,.2);--color-warning-alpha-10:rgba(245,158,11,.1);--color-warning-alpha-20:rgba(245,158,11,.2);--color-error-alpha-10:rgba(239,68,68,.1);--color-error-alpha-20:rgba(239,68,68,.2);--color-info-alpha-10:rgba(6,182,212,.1);--color-info-alpha-20:rgba(6,182,212,.2);--spacing-2xs:0.125rem;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--font-family-base:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-family-mono:"Monaco","Courier New",monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.3);--shadow-md:0 4px 6px -1px rgba(0,0,0,.4);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.5);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.6);--shadow-2xl:0 25px 50px -12px rgba(0,0,0,.7);--shadow-focus:0 0 0 3px rgba(59,130,246,.1);--shadow-glow:0 0 20px rgba(59,130,246,.3);--shadow-success:0 0 20px rgba(16,185,129,.3);--focus-ring:0 0 0 3px rgba(59,130,246,.15);--focus-ring-error:0 0 0 3px rgba(239,68,68,.15);--focus-ring-success:0 0 0 3px rgba(16,185,129,.15);--elevation-1:var(--shadow-sm);--elevation-2:var(--shadow-md);--elevation-3:var(--shadow-lg);--radius-sm:6px;--radius-md:8px;--radius-lg:20px;--radius-xl:25px;--radius-full:9999px;--border-radius-lg:var(--radius-lg);--border-radius-md:var(--radius-md);--border-radius-sm:var(--radius-sm);--transition-fast:150ms ease;--transition-base:200ms ease;--transition-slow:300ms ease;--transition-all:all 200ms ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--btn-height-sm:32px;--btn-height-md:40px;--btn-height-lg:48px;--btn-padding-x-sm:12px;--btn-padding-x-md:16px;--btn-padding-x-lg:24px;--btn-font-size-sm:var(--font-size-sm);--btn-font-size-md:var(--font-size-base);--btn-font-size-lg:var(--font-size-lg);--btn-border-radius:var(--radius-md);--input-height-sm:32px;--input-height-md:40px;--input-height-lg:48px;--input-padding-x-sm:12px;--input-padding-x-md:12px;--input-padding-x-lg:16px;--input-font-size-sm:var(--font-size-sm);--input-font-size-md:var(--font-size-base);--input-font-size-lg:var(--font-size-base);--input-border-radius:var(--radius-md);--card-padding-sm:var(--spacing-md);--card-padding-md:var(--spacing-lg);--card-padding-lg:var(--spacing-xl);--card-border-radius:var(--radius-lg);--card-background:var(--surface-raised);--card-border-color:var(--color-border-light);--modal-backdrop:var(--surface-overlay);--modal-background:var(--surface-elevated);--modal-padding:var(--spacing-xl);--modal-border-radius:var(--radius-lg);--modal-shadow:var(--shadow-xl);--progress-height:4px;--progress-background:var(--surface-interactive);--progress-border-radius:var(--radius-full);--badge-padding-x:var(--spacing-sm);--badge-padding-y:var(--spacing-2xs);--badge-font-size:var(--font-size-xs);--badge-border-radius:var(--radius-full);--dropdown-background:var(--surface-overlay);--dropdown-border-radius:var(--radius-md);--dropdown-shadow:var(--shadow-lg);--dropdown-item-padding:var(--spacing-sm) var(--spacing-md);--dropdown-item-height:40px}@media (prefers-reduced-motion:reduce){:root{--transition-fast:0ms;--transition-base:0ms;--transition-slow:0ms;--transition-all:0ms}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.modal-overlay{position:fixed;inset:0;background:var(--modal-backdrop,var(--surface-overlay));backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal,1050);padding:var(--spacing-md);overflow-y:auto}.modal{position:relative;background:var(--surface-elevated-solid);border:1px solid var(--color-border-light);border-radius:var(--modal-border-radius,var(--radius-lg));box-shadow:var(--modal-shadow,var(--shadow-xl));width:100%;max-width:800px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;margin:auto}.modal--sm{max-width:520px}.modal--md{max-width:650px}.modal--lg{max-width:900px}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-lg);border-bottom:1px solid var(--color-border-light);flex-shrink:0}.modal-title-wrap{display:flex;flex-direction:column;gap:calc(var(--spacing-sm)*.6);flex:1;min-width:0}.modal-title{margin:0;font-size:1.15rem;font-weight:var(--font-weight-bold);color:var(--color-text-primary);display:flex;align-items:center;gap:var(--spacing-sm)}.modal-subtitle{margin:0;font-size:var(--font-size-sm);line-height:1.4;color:var(--color-text-muted)}.modal-header--danger{border-bottom-color:rgba(239,68,68,.2)}.modal-close{margin-left:auto;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background-color:var(--surface-interactive);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-muted);font-size:1rem;transition:var(--transition-base);flex-shrink:0;padding:0}.modal-close:hover{background-color:var(--surface-hover);border-color:var(--color-border-medium);color:var(--color-text-primary)}.modal-close:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.modal-close:active{background-color:var(--surface-active)}.modal-body{flex:1;overflow-y:auto;padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:transparent}.modal-body::-webkit-scrollbar-thumb{background:var(--color-border-medium);border-radius:var(--radius-sm)}.modal-body::-webkit-scrollbar-thumb:hover{background:var(--color-border-light)}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border-light);flex-shrink:0}.modal-footer .btn{min-height:var(--btn-height-md)}.modal-form{display:flex;flex-direction:column;flex:1;min-height:0}.modal-enter-active,.modal-leave-active{transition:opacity .2s ease}.modal-enter-from,.modal-leave-to{opacity:0}.modal-fade-enter-active,.modal-fade-leave-active{transition:opacity .2s ease}.modal-fade-enter-from,.modal-fade-leave-to{opacity:0}@media (max-width:768px){.modal{max-height:100vh;border-radius:0;margin:0}.modal,.modal--lg,.modal--md,.modal--sm{max-width:100%}.modal-overlay{padding:0}.modal-header{padding:var(--spacing-md);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--color-border-light)}.modal-title{font-size:1.05rem}.modal-close{width:36px;height:36px}.modal-body,.modal-footer{padding:var(--spacing-md)}.modal-footer{gap:var(--spacing-sm);flex-wrap:wrap;position:sticky;bottom:0;border-top:1px solid var(--color-border-light)}.modal-footer .btn{flex:1;min-width:120px}}@media (max-width:480px){.modal-title{font-size:1rem}.modal-title-wrap{gap:.3rem}.modal-subtitle{font-size:.75rem}.modal-body,.modal-header{gap:var(--spacing-sm)}.modal-footer{gap:var(--spacing-xs)}.modal-footer .btn{font-size:.9rem;padding:.5rem 1rem}}.card{position:relative;background:var(--card-bg,var(--surface-elevated));border:1px solid var(--card-border-color,var(--color-border-light));border-radius:var(--card-border-radius,var(--radius-lg));overflow:hidden;transition:var(--transition-base)}.card--default{background:var(--card-bg,var(--surface-base));border:1px solid var(--color-border-light);box-shadow:none}.card--elevated{background:var(--card-bg,var(--surface-elevated));border:none;box-shadow:var(--shadow-md)}.card--outline{border:2px solid var(--color-border-medium)}.card--ghost,.card--outline{background:transparent;box-shadow:none}.card--ghost{border:none}.card--interactive{cursor:pointer}.card--interactive:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-border-medium)}.card-header{padding:var(--card-header-padding,var(--spacing-lg));border-bottom:1px solid var(--card-divider-color,var(--color-border-light));display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.card-header--empty{padding:0;border:none}.card-title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--card-title-color,var(--color-text-primary));flex:1}.card-description{margin:0;font-size:var(--font-size-sm);color:var(--card-description-color,var(--color-text-secondary));font-weight:var(--font-weight-normal)}.card-body{padding:var(--card-body-padding,var(--spacing-lg))}.card-body--compact{padding:var(--spacing-md)}.card-body--spacious{padding:var(--spacing-xl)}.card-body--no-padding{padding:0}.card-footer{padding:var(--card-footer-padding,var(--spacing-lg));border-top:1px solid var(--card-divider-color,var(--color-border-light));display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.card-footer--empty{padding:0;border:none}.card-media{position:relative;width:100%;overflow:hidden;background:var(--surface-overlay)}.card-media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform var(--transition-base)}.card--interactive:hover .card-media img{transform:scale(1.05)}.card-info{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.card--flex{display:flex;flex-direction:row;align-items:stretch}.card--flex .card-media{flex-shrink:0}.card--flex .card-body{flex:1}.card--column{display:flex;flex-direction:column;align-items:stretch}.card--column .card-body{flex:1}.card--padding-none,.card--padding-none .card-body,.card--padding-none .card-footer,.card--padding-none .card-header{padding:0}.card--padding-sm{--card-header-padding:var(--spacing-sm);--card-body-padding:var(--spacing-sm);--card-footer-padding:var(--spacing-sm)}.card--padding-md{--card-header-padding:var(--spacing-md);--card-body-padding:var(--spacing-md);--card-footer-padding:var(--spacing-md)}.card--padding-lg{--card-header-padding:var(--spacing-lg);--card-body-padding:var(--spacing-lg);--card-footer-padding:var(--spacing-lg)}.card--padding-xl{--card-header-padding:var(--spacing-xl);--card-body-padding:var(--spacing-xl);--card-footer-padding:var(--spacing-xl)}.card--compact{border-radius:var(--radius-md)}.card--standard{border-radius:var(--radius-lg)}.card--large{border-radius:var(--radius-xl)}.card--disabled{opacity:.6;pointer-events:none}.card--selected{border-color:var(--color-primary);box-shadow:var(--shadow-focus);background:var(--color-primary-alpha-10)}.card--loading{opacity:.7;pointer-events:none}@media (max-width:768px){.card--flex{flex-direction:column}.card-media{max-height:300px}}@media (prefers-reduced-motion:reduce){.card,.card--interactive,.card-media img{transition:none}}@media (prefers-color-scheme:dark){.card--default{background:var(--surface-base)}.card--elevated{background:var(--surface-elevated)}}.label{display:block;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);margin-bottom:.5rem;line-height:1.4}.label.label--sm{font-size:.8125rem;margin-bottom:.375rem}.label.label--lg{font-size:.9375rem;margin-bottom:.625rem}.label .required{color:var(--color-error);margin-left:.125rem}.input,.select,.textarea{width:100%;background-color:var(--color-bg-interactive);color:var(--color-text-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);font-size:.9375rem;font-family:var(--font-family-base);line-height:1.5;transition:var(--transition-base);box-sizing:border-box}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.input::-moz-placeholder,.textarea::-moz-placeholder{color:var(--color-text-muted);opacity:1}.input::placeholder,.textarea::placeholder{color:var(--color-text-muted);opacity:1}.input.is-disabled,.input:disabled,.select.is-disabled,.select:disabled,.textarea.is-disabled,.textarea:disabled{opacity:.5;cursor:not-allowed;background-color:var(--color-bg-content-secondary)}.input{padding:.75rem 1rem;height:2.875rem}.input.input--sm{padding:.5rem .75rem;height:2.25rem;font-size:.875rem}.input.input--md{padding:.65rem .875rem;height:2.625rem;font-size:.9rem}.input.input--lg{padding:.875rem 1.25rem;height:3.25rem;font-size:1rem}.textarea{padding:.75rem 1rem;min-height:6rem;resize:vertical;line-height:1.6}.textarea.textarea--sm{padding:.5rem .75rem;min-height:4.5rem;font-size:.875rem}.textarea.textarea--lg{padding:.875rem 1.25rem;min-height:8rem;font-size:1rem}.textarea.textarea--fixed{resize:none}.select{padding:.75rem 1rem;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%239ca3af' d='M10.293 3.293 6 7.586 1.707 3.293A1 1 0 0 0 .293 4.707l5 5a1 1 0 0 0 1.414 0l5-5a1 1 0 1 0-1.414-1.414z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:.75rem;padding-right:2.5rem}.select.select--sm{padding:.5rem .75rem;padding-right:2rem;font-size:.875rem;background-position:right .75rem center}.select.select--lg{padding:.875rem 1.25rem;padding-right:3rem;font-size:1rem;background-position:right 1.25rem center}.select option{background-color:var(--color-bg-content-secondary);color:var(--color-text-primary)}.select-wrapper{position:relative;display:flex;align-items:center}.select-wrapper .select{padding-right:2.5rem}.select-wrapper .chevron-indicator{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--color-text-muted);font-size:.75rem;transition:transform .2s ease}.select-wrapper:focus-within .chevron-indicator{transform:translateY(-50%) rotate(180deg);color:var(--color-primary)}.input.is-invalid,.select.is-invalid,.textarea.is-invalid{border-color:var(--color-error)}.input.is-invalid:focus-visible,.select.is-invalid:focus-visible,.textarea.is-invalid:focus-visible{border-color:var(--color-error);box-shadow:var(--focus-ring-error)}.input.is-valid,.select.is-valid,.textarea.is-valid{border-color:var(--color-success)}.input.is-valid:focus-visible,.select.is-valid:focus-visible,.textarea.is-valid:focus-visible{border-color:var(--color-success);box-shadow:var(--focus-ring-success)}.help-text{display:block;margin-top:.375rem;font-size:.875rem;color:var(--color-text-muted);line-height:1.4}.help-text.help-text--error{color:var(--color-error);margin-top:.25rem}.help-text.help-text--success{color:var(--color-success);margin-top:.25rem}.help-text.help-text--warning{color:var(--color-warning);margin-top:.25rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.form-row.form-row--2-col{grid-template-columns:repeat(2,1fr)}.form-row.form-row--3-col{grid-template-columns:repeat(3,1fr)}.form-row.form-row--compact{gap:.75rem;margin-bottom:.75rem}.input-group{display:flex;gap:.5rem;align-items:stretch}.input-group .input,.input-group .select,.input-group .textarea{flex:1}.input-group.input-group--tight{gap:0}.input-group.input-group--tight>:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.input-group.input-group--tight>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.form-group{margin-bottom:1.25rem}.form-group.form-group--compact{margin-bottom:.875rem}.form-group.form-group--spacious{margin-bottom:1.75rem}.form-group:last-child{margin-bottom:0}.form-control{width:100%;background-color:var(--color-bg-interactive);color:var(--color-text-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);padding:.75rem 1rem;font-size:.9375rem;font-family:var(--font-family-base);transition:var(--transition-base);box-sizing:border-box}.form-control:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.form-control::-moz-placeholder{color:var(--color-text-muted)}.form-control::placeholder{color:var(--color-text-muted)}.form-control:disabled{opacity:.5;cursor:not-allowed;background-color:var(--color-bg-content-secondary)}.form-help{display:block;margin-top:.375rem;font-size:.875rem;color:var(--color-text-muted)}.input-field{width:100%;background-color:var(--color-bg-content-secondary);color:var(--color-text-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);padding:.75rem 1rem;font-size:1rem;transition:var(--transition-all)}.input-field:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.input-field::-moz-placeholder{color:var(--color-text-muted)}.input-field::placeholder{color:var(--color-text-muted)}@media (max-width:768px){.form-row,.form-row.form-row--2-col,.form-row.form-row--3-col{grid-template-columns:1fr}.input-group{flex-direction:column}.input-group.input-group--tight>*{border-radius:var(--radius-sm)!important;margin-left:0!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm,.5rem);padding:.625rem 1.25rem;border:1px solid transparent;border-radius:var(--radius-md,.5rem);font-family:var(--font-family-base,system-ui,sans-serif);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);line-height:1.5;text-align:center;text-decoration:none;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;transition:var(--transition-base,all .2s ease);appearance:button;-webkit-appearance:button;-moz-appearance:button}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-sm{height:var(--btn-height-sm,2rem);padding:.375rem .75rem;font-size:.8125rem;gap:.375rem}.btn-md{height:var(--btn-height-md,2.625rem);padding:.5rem 1rem;font-size:var(--font-size-sm,.875rem)}.btn-lg{height:var(--btn-height-lg,3rem);padding:.75rem 1.5rem;font-size:var(--font-size-base,1rem);gap:.625rem}.btn-xl{height:3.5rem;padding:1rem 2rem;font-size:1.125rem;font-weight:var(--font-weight-semibold,600);gap:.75rem}.btn-primary{background:var(--color-primary,#3b82f6);color:#fff;border-color:var(--color-primary,#3b82f6)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover,#2563eb);border-color:var(--color-primary-hover,#2563eb);transform:translateY(-2px);box-shadow:var(--shadow-md,0 4px 6px -1px rgba(0,0,0,.1))}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--surface-interactive,hsla(0,0%,100%,.08));color:var(--color-text-primary,#fff);border:1px solid var(--color-border-medium,hsla(0,0%,100%,.1))}.btn-secondary:hover:not(:disabled){background:var(--surface-hover,hsla(0,0%,100%,.12));border-color:hsla(0,0%,100%,.15)}.btn-danger{background:rgba(220,38,38,.15);color:#f87171;border:1px solid rgba(220,38,38,.3)}.btn-danger:hover:not(:disabled){background:rgba(220,38,38,.25);border-color:rgba(220,38,38,.5);color:#fca5a5}.btn-danger.btn-solid{background:var(--color-error,#dc2626);color:#fff;border-color:var(--color-error,#dc2626)}.btn-danger.btn-solid:hover:not(:disabled){background:var(--color-error-hover,#b91c1c);border-color:var(--color-error-hover,#b91c1c)}.btn-success{background:var(--color-success,#10b981);color:#fff;border-color:var(--color-success,#10b981)}.btn-success:hover:not(:disabled){background:var(--color-success-hover,#059669);border-color:var(--color-success-hover,#059669);box-shadow:var(--shadow-success,0 0 0 3px rgba(16,185,129,.2))}.btn-warning{background:var(--color-warning,#f59e0b);color:#fff;border-color:var(--color-warning,#f59e0b)}.btn-warning:hover:not(:disabled){background:var(--color-warning-hover,#d97706);border-color:var(--color-warning-hover,#d97706)}.btn-outline{background:var(--surface-interactive,hsla(0,0%,100%,.05));color:var(--color-text-primary,#fff);border:1px solid var(--color-border-medium,hsla(0,0%,100%,.15))}.btn-outline:hover:not(:disabled){background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.3)}.btn-ghost{background:transparent;color:var(--color-text-primary,#fff);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--color-bg-interactive,hsla(0,0%,100%,.1))}.btn-icon{padding:.5rem;width:2.5rem;height:2.5rem;border-radius:var(--radius-md,.5rem);background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;transition:var(--transition-base)}.btn-icon:hover:not(:disabled){background:var(--color-bg-interactive,hsla(0,0%,100%,.1));color:var(--color-text-primary)}.btn-icon.btn-sm{width:2rem;height:2rem;padding:.375rem}.btn-icon.btn-lg{width:3rem;height:3rem;padding:.75rem}.icon-btn{padding:.5rem;min-width:2.5rem;aspect-ratio:1}.btn-close{padding:.5rem;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;font-size:1.5rem;line-height:1;opacity:.7;transition:var(--transition-base)}.btn-close:hover:not(:disabled){opacity:1;color:var(--color-text-primary)}.btn-toggle{background:var(--color-bg-interactive);color:var(--color-text-muted);border:1px solid var(--color-border-light);padding:.5rem 1rem;transition:var(--transition-base)}.btn-toggle:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.btn-toggle.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-copy{padding:.25rem .5rem;background:var(--color-bg-interactive);border:1px solid var(--color-border-light);color:var(--color-text-muted);font-size:.75rem;border-radius:var(--radius-sm)}.btn-copy:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.btn-preview{border-color:var(--color-info,#3b82f6);color:var(--color-info,#3b82f6)}.btn-preview:hover:not(:disabled){background:rgba(59,130,246,.1)}.btn-reopen{border-color:var(--color-warning,#f59e0b);color:var(--color-warning,#f59e0b)}.btn-reopen:hover:not(:disabled){background:rgba(245,158,11,.1)}.btn-loading{position:relative;color:transparent!important;pointer-events:none;cursor:wait}.btn-loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:btn-spin .6s linear infinite}@keyframes btn-spin{to{transform:translate(-50%,-50%) rotate(1turn)}}.btn .fa-spinner.fa-spin{animation:spin .8s linear infinite}.btn-group{display:inline-flex;gap:.5rem}.btn-group.btn-group-tight{gap:0}.btn-group.btn-group-tight .btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.btn-group.btn-group-tight .btn:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.btn-full{width:100%;display:flex}.input-group .btn{min-height:var(--btn-height-md,2.625rem);height:var(--btn-height-md,2.625rem);border-radius:var(--radius-sm)}.modal-footer .btn{min-width:6rem}.base-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm,.5rem);font-family:var(--font-family-base);font-weight:var(--font-weight-semibold,600);border:none;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-all);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.base-button:active:not(.base-button--disabled){transform:translateY(1px)}.base-button--sm{height:var(--btn-height-sm,2rem);padding:0 var(--btn-padding-x-sm,.75rem);font-size:var(--font-size-sm,.875rem)}.base-button--md{height:var(--btn-height-md,2.625rem);padding:0 var(--btn-padding-x-md,1rem);font-size:var(--font-size-base,1rem)}.base-button--lg{height:var(--btn-height-lg,3rem);padding:0 var(--btn-padding-x-lg,1.5rem);font-size:var(--font-size-lg,1.125rem)}.base-button--primary{background:var(--color-primary);color:#fff}.base-button--primary:hover:not(.base-button--disabled){background:var(--color-primary-hover);box-shadow:var(--shadow-glow)}.base-button--secondary{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.base-button--secondary:hover:not(.base-button--disabled){background:var(--color-bg-hover)}.base-button--success{background:var(--color-success);color:#fff}.base-button--success:hover:not(.base-button--disabled){background:var(--color-success-hover);box-shadow:var(--shadow-success)}.base-button--danger{background:var(--color-error);color:#fff}.base-button--danger:hover:not(.base-button--disabled){background:var(--color-error-hover)}.base-button--warning{background:var(--color-warning);color:#fff}.base-button--warning:hover:not(.base-button--disabled){background:var(--color-warning-hover)}.base-button--ghost{background:transparent;color:var(--color-text-primary)}.base-button--ghost:hover:not(.base-button--disabled){background:var(--color-bg-interactive)}.base-button--outline{background:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.base-button--outline:hover:not(.base-button--disabled){background:var(--color-primary-alpha-10,rgba(59,130,246,.1))}.base-button--disabled{opacity:.5;cursor:not-allowed}.base-button--loading{cursor:wait}.base-button--full-width{width:100%}.base-button i{font-size:1em}.base-button .fa-spinner{animation:spin 1s linear infinite}.login-btn{width:100%;margin-top:.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.search-btn{gap:var(--spacing-xs)}.request-btn,.search-btn{display:inline-flex;align-items:center}.request-btn{justify-content:center}.ai-modal-req-btn{min-width:80px}.tour-btn-primary{background:linear-gradient(135deg,var(--color-primary) 0,#2563eb 100%);color:#fff;padding:.75rem 1.5rem;border:none;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:var(--transition-all)}.tour-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 16px rgba(59,130,246,.3)}@media (max-width:768px){.btn-xl{height:3rem;padding:.75rem 1.5rem;font-size:1rem}.modal-footer .btn{min-width:5rem;font-size:.875rem}.btn-group{flex-wrap:wrap}}@media (max-width:480px){.btn{padding:.5rem 1rem}.btn-lg{padding:.625rem 1.25rem;font-size:.9375rem}.modal-footer .btn{width:100%}}*{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,html{font-size:var(--font-size-base)}body{font-family:var(--font-family-base);line-height:var(--line-height-normal);background-color:var(--color-bg-primary);overflow-x:hidden}body,h1,h2,h3,h4,h5,h6{color:var(--color-text-primary)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}h1{font-size:var(--font-size-4xl);margin-bottom:var(--spacing-lg)}h2{font-size:var(--font-size-3xl)}h2,h3{margin-bottom:var(--spacing-md)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h4,h5{margin-bottom:var(--spacing-sm)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base);margin-bottom:var(--spacing-sm)}p{margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}a{color:var(--color-primary);text-decoration:none;transition:var(--transition-fast)}a:hover{color:var(--color-primary-hover)}strong{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}code{font-family:var(--font-family-mono);font-size:var(--font-size-sm);background:var(--surface-interactive);padding:var(--spacing-2xs) calc(var(--spacing-xs) + var(--spacing-2xs));border-radius:var(--radius-sm);color:var(--color-primary-light)}::-webkit-scrollbar{width:calc(var(--spacing-xs)*2.5);height:calc(var(--spacing-xs)*2.5)}::-webkit-scrollbar-track{background:var(--surface-raised)}::-webkit-scrollbar-thumb{background:var(--surface-interactive);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--color-border-medium)}::-moz-selection{background:var(--color-primary-alpha-20);color:var(--color-text-primary)}::selection{background:var(--color-primary-alpha-20);color:var(--color-text-primary)}:focus-visible{outline:var(--spacing-2xs) solid var(--color-border-focus);outline-offset:var(--spacing-2xs)}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.w-full{width:100%}.max-w-sm{max-width:var(--breakpoint-sm)}.max-w-md{max-width:var(--breakpoint-md)}.max-w-lg{max-width:var(--breakpoint-lg)}.max-w-xl{max-width:var(--breakpoint-xl)}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.transition{transition:var(--transition-all)}.transition-fast{transition:var(--transition-fast)}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideInUp{0%{opacity:0;transform:translateY(calc(var(--spacing-xs)*5))}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(calc(var(--spacing-xs)*-5))}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-fade-in{animation:fadeIn var(--transition-base)}.animate-slide-up{animation:slideInUp var(--transition-base)}.animate-slide-down{animation:slideInDown var(--transition-base)}.animate-scale-in{animation:scaleIn var(--transition-base)}.animate-spin{animation:spin 1s linear infinite}