*,*:before,*:after{box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-size:16px;line-height:1.5;color:var(--color-text-primary);background-color:var(--color-bg-primary);letter-spacing:-.011em}.hide{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.gradient-bg{background:var(--gradient-bg)}.gradient-hero{background:var(--gradient-hero)}.gradient-text{background:var(--gradient-primary);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis-2{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.text-ellipsis-3{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.animate-fade-in-up{animation:fadeInUp .8s ease-out 0s forwards;opacity:0;transform:translateY(20px)}.animation-delay-100{animation-delay:.1s}.animation-delay-200{animation-delay:.2s}.animation-delay-300{animation-delay:.3s}.animation-delay-400{animation-delay:.4s}.animate-float{animation:float 6s ease-in-out infinite}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-blink{animation:blink 1s step-end infinite}.v2board-card{background:#fffc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}[data-theme=dark] .v2board-card{background:#1f2937cc}.v2board-card{border:1px solid var(--color-border-light);border-radius:16px;padding:24px}.v2board-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}body{scrollbar-color:rgba(0,0,0,.3) transparent;scrollbar-width:thin}body::-webkit-scrollbar{width:7px;height:7px}body::-webkit-scrollbar-track{background:transparent;border-radius:7px}body::-webkit-scrollbar-thumb{background-color:#0000004d;border-radius:7px}body::-webkit-scrollbar-thumb:hover{background-color:#00000080}.custom-scrollbar{scrollbar-color:rgba(0,0,0,.3) transparent;scrollbar-width:thin}.custom-scrollbar::-webkit-scrollbar{width:7px;height:7px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent;border-radius:7px}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#0000004d;border-radius:7px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:#00000080}.route-loading{position:fixed;top:50%;left:50%;width:120px;height:22px;color:var(--color-primary);border:2px solid;border-radius:20px;transform:translate(-50%,-50%)}.route-loading:before{content:"";position:absolute;inset:0 100% 0 0;margin:2px;background:currentcolor;border-radius:inherit;animation:loading-progress 2s infinite}@keyframes loading-progress{to{inset:0}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:500;line-height:1.5;border-radius:12px;border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:500;line-height:1.5;border-radius:12px;border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:0 10px 15px -3px #3b82f640,0 4px 6px -4px #3b82f640}.btn-primary:hover:not(:disabled){background:var(--gradient-primary-dark);transform:translateY(-1px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:500;line-height:1.5;border-radius:12px;border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:#fff;color:var(--color-text-primary);border:1px solid var(--color-border)}[data-theme=dark] .btn-secondary{background:#374151}.btn-secondary:hover:not(:disabled){background:var(--color-bg-secondary);border-color:var(--color-gray-300)}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:500;line-height:1.5;border-radius:12px;border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-ghost:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--color-bg-secondary);color:var(--color-text-primary)}.btn-lg{padding:16px 24px;font-size:16px}.btn-sm{padding:8px 12px;font-size:12px}.btn-icon{padding:8px}.btn-icon svg{width:20px;height:20px}.input{width:100%;padding:12px 16px;font-size:14px;line-height:1.5;color:var(--color-text-primary);background:#fff;border:1px solid var(--color-border);border-radius:12px;outline:none;transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .input{background:#374151}.input::placeholder{color:var(--color-text-muted)}.input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary),.1)}.input:disabled{background:var(--color-bg-secondary);cursor:not-allowed}.input-error{border-color:var(--color-danger)}.input-error:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px rgba(var(--color-danger),.1)}.input-group{display:flex;flex-direction:column;gap:8px}.input-group label{font-size:14px;font-weight:500;color:var(--color-text-secondary)}.input-group .error-message{font-size:12px;color:var(--color-danger)}.card{background:#fff;border-radius:16px;box-shadow:0 1px 2px #0000000d;border:1px solid var(--color-border-light)}[data-theme=dark] .card{background:#1f2937}.card{padding:24px}.card-hover{transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;transform:translateY(-2px)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--color-border-light)}.card-title{font-size:18px;font-weight:600;color:var(--color-text-primary)}.card-body{position:relative}.card-footer{margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border-light)}.progress{width:100%;height:8px;background:rgba(var(--color-gray-200),.5);border-radius:9999px;overflow:hidden}.progress-bar{height:100%;background:var(--gradient-primary);border-radius:9999px;transition:width .3s cubic-bezier(.4,0,.2,1)}.progress-sm{height:4px}.progress-lg{height:12px}.badge{display:inline-flex;align-items:center;padding:4px 8px;font-size:12px;font-weight:500;border-radius:9999px}.badge-primary{background:rgba(var(--color-primary),.1);color:var(--color-primary)}.badge-success{background:rgba(var(--color-success),.1);color:var(--color-success)}.badge-warning{background:rgba(var(--color-warning),.1);color:var(--color-warning)}.badge-danger{background:rgba(var(--color-danger),.1);color:var(--color-danger)}.badge-gradient{background:var(--gradient-primary);color:#fff}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 16px}@media(min-width:640px){.container{padding:0 24px}}@media(min-width:1024px){.container{padding:0 32px}}.mt-0{margin-top:0}.mb-0{margin-bottom:0}.ml-0{margin-left:0}.mr-0{margin-right:0}.mx-0{margin-left:0;margin-right:0}.my-0{margin-top:0;margin-bottom:0}.pt-0{padding-top:0}.pb-0{padding-bottom:0}.pl-0{padding-left:0}.pr-0{padding-right:0}.px-0{padding-left:0;padding-right:0}.py-0{padding-top:0;padding-bottom:0}.gap-0{gap:0}.mt-1{margin-top:4px}.mb-1{margin-bottom:4px}.ml-1{margin-left:4px}.mr-1{margin-right:4px}.mx-1{margin-left:4px;margin-right:4px}.my-1{margin-top:4px;margin-bottom:4px}.pt-1{padding-top:4px}.pb-1{padding-bottom:4px}.pl-1{padding-left:4px}.pr-1{padding-right:4px}.px-1{padding-left:4px;padding-right:4px}.py-1{padding-top:4px;padding-bottom:4px}.gap-1{gap:4px}.mt-2{margin-top:8px}.mb-2{margin-bottom:8px}.ml-2{margin-left:8px}.mr-2{margin-right:8px}.mx-2{margin-left:8px;margin-right:8px}.my-2{margin-top:8px;margin-bottom:8px}.pt-2{padding-top:8px}.pb-2{padding-bottom:8px}.pl-2{padding-left:8px}.pr-2{padding-right:8px}.px-2{padding-left:8px;padding-right:8px}.py-2{padding-top:8px;padding-bottom:8px}.gap-2{gap:8px}.mt-3{margin-top:12px}.mb-3{margin-bottom:12px}.ml-3{margin-left:12px}.mr-3{margin-right:12px}.mx-3{margin-left:12px;margin-right:12px}.my-3{margin-top:12px;margin-bottom:12px}.pt-3{padding-top:12px}.pb-3{padding-bottom:12px}.pl-3{padding-left:12px}.pr-3{padding-right:12px}.px-3{padding-left:12px;padding-right:12px}.py-3{padding-top:12px;padding-bottom:12px}.gap-3{gap:12px}.mt-4{margin-top:16px}.mb-4{margin-bottom:16px}.ml-4{margin-left:16px}.mr-4{margin-right:16px}.mx-4{margin-left:16px;margin-right:16px}.my-4{margin-top:16px;margin-bottom:16px}.pt-4{padding-top:16px}.pb-4{padding-bottom:16px}.pl-4{padding-left:16px}.pr-4{padding-right:16px}.px-4{padding-left:16px;padding-right:16px}.py-4{padding-top:16px;padding-bottom:16px}.gap-4{gap:16px}.mt-5{margin-top:20px}.mb-5{margin-bottom:20px}.ml-5{margin-left:20px}.mr-5{margin-right:20px}.mx-5{margin-left:20px;margin-right:20px}.my-5{margin-top:20px;margin-bottom:20px}.pt-5{padding-top:20px}.pb-5{padding-bottom:20px}.pl-5{padding-left:20px}.pr-5{padding-right:20px}.px-5{padding-left:20px;padding-right:20px}.py-5{padding-top:20px;padding-bottom:20px}.gap-5{gap:20px}.mt-6{margin-top:24px}.mb-6{margin-bottom:24px}.ml-6{margin-left:24px}.mr-6{margin-right:24px}.mx-6{margin-left:24px;margin-right:24px}.my-6{margin-top:24px;margin-bottom:24px}.pt-6{padding-top:24px}.pb-6{padding-bottom:24px}.pl-6{padding-left:24px}.pr-6{padding-right:24px}.px-6{padding-left:24px;padding-right:24px}.py-6{padding-top:24px;padding-bottom:24px}.gap-6{gap:24px}.mt-8{margin-top:32px}.mb-8{margin-bottom:32px}.ml-8{margin-left:32px}.mr-8{margin-right:32px}.mx-8{margin-left:32px;margin-right:32px}.my-8{margin-top:32px;margin-bottom:32px}.pt-8{padding-top:32px}.pb-8{padding-bottom:32px}.pl-8{padding-left:32px}.pr-8{padding-right:32px}.px-8{padding-left:32px;padding-right:32px}.py-8{padding-top:32px;padding-bottom:32px}.gap-8{gap:32px}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.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-shrink-0{flex-shrink:0}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-xs{font-size:12px}.text-sm{font-size:14px}.text-base{font-size:16px}.text-lg{font-size:18px}.text-xl{font-size:20px}.text-2xl{font-size:24px}.text-3xl{font-size:30px}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.hidden{display:none}@media(min-width:768px){.hidden-md{display:none}.show-md{display:block}}@media(max-width:767px){.show-md{display:none}}[data-theme=dark] .ant-table .ant-table-thead>tr>th{border-bottom-color:var(--color-border);color:var(--color-text-primary);background:var(--color-bg-tertiary)}[data-theme=dark] .ant-table .ant-table-tbody>tr>td{border-bottom-color:var(--color-border);color:var(--color-text-primary)}[data-theme=dark] .ant-table .ant-table-tbody>tr:hover>td{background:var(--color-bg-tertiary)}[data-theme=dark] .ant-table .text-gray-500,[data-theme=dark] .ant-table .text-xs.text-gray-500,[data-theme=dark] .text-gray-500,[data-theme=dark] .text-gray-400,[data-theme=dark] .ant-card .text-sm.text-gray-500,[data-theme=dark] .ant-card .text-sm.text-gray-400,[data-theme=dark] .ant-card .text-xs.text-gray-500,[data-theme=dark] .ant-card .text-xs.text-gray-400{color:var(--color-text-muted)!important}[data-theme=dark] .ant-statistic-title{color:var(--color-text-secondary)!important}[data-theme=dark] .admin-page-desc{color:var(--color-text-secondary)}[data-theme=dark] .ant-message .ant-message-notice .ant-message-notice-content,[data-theme=dark] .ant-notification .ant-notification-notice{background:var(--color-bg-secondary)!important;color:var(--color-text-primary)!important;box-shadow:0 6px 16px #00000014,0 3px 6px -4px #0000001f,0 9px 28px 8px #0000000d!important}[data-theme=dark] .ant-notification .ant-notification-notice .ant-notification-notice-message{color:var(--color-text-primary)!important}[data-theme=dark] .ant-notification .ant-notification-notice .ant-notification-notice-description,[data-theme=dark] .ant-notification .ant-notification-notice .ant-notification-notice-close{color:var(--color-text-secondary)!important}[data-theme=dark] .ant-notification .ant-notification-notice .ant-notification-notice-close:hover{color:var(--color-text-primary)!important}.highlight{font-weight:700;background-color:unset}.pub-loading{position:fixed;inset:0;z-index:9999999;display:flex;align-items:center;justify-content:center;width:100%;height:100%;background-color:#0003}.pub-loading svg{width:100px;height:100px}.announcement-modal .ant-modal-content{border-radius:24px;padding:32px 40px;box-shadow:0 25px 50px -12px #00000040}@media(max-width:639px){.announcement-modal .ant-modal-content{padding:24px;border-radius:16px}}.announcement-modal .ant-modal-header{display:none}.announcement-modal .ant-modal-close{top:16px;right:16px}@media(max-width:639px){.announcement-modal .ant-modal-close{top:12px;right:12px}}.announcement-modal .ant-modal-body{padding:0}.announcement-modal:not(.announcement-modal--list) .ant-modal-body{max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.announcement-modal:not(.announcement-modal--list) .announcement-modal__container{flex:1;min-height:0;overflow:hidden}.announcement-modal:not(.announcement-modal--list) .announcement-modal__content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}@media(max-width:639px){.announcement-modal:not(.announcement-modal--list) .announcement-modal__content{max-height:60vh}}.announcement-modal__container{display:flex;flex-direction:column;gap:24px;width:100%}.announcement-modal__header{display:flex;flex-direction:column;gap:12px}.announcement-modal__tags{margin-bottom:4px}.announcement-modal__date{font-size:14px;opacity:.85;font-weight:500}.announcement-modal__title{margin:0!important;font-weight:700!important;color:var(--color-text-primary)!important;line-height:1.4!important}.announcement-modal__content{font-size:16px;line-height:1.8;color:var(--color-text-primary)}.announcement-modal__content p{margin-bottom:16px}.announcement-modal__content p:last-child{margin-bottom:0}.announcement-modal__content h1,.announcement-modal__content h2,.announcement-modal__content h3{margin:24px 0 12px;font-weight:600}.announcement-modal__content h1:first-child,.announcement-modal__content h2:first-child,.announcement-modal__content h3:first-child{margin-top:0}.announcement-modal__content ul,.announcement-modal__content ol{padding-left:20px;margin-bottom:16px}.announcement-modal__content li{margin-bottom:4px}.announcement-modal__content blockquote{margin:16px 0;padding:8px 16px;border-left:3px solid var(--color-border);background:#00000005;color:var(--color-text-secondary);font-style:italic}[data-theme=dark] .announcement-modal__content blockquote{background:#ffffff08}.announcement-modal__content code{padding:.2em .4em;background:#0000000d;border-radius:4px;font-family:JetBrains Mono,Fira Code,SFMono-Regular,Consolas,Liberation Mono,Menlo,Monaco,Courier,monospace;font-size:.875em;font-variant-ligatures:none}[data-theme=dark] .announcement-modal__content code{background:#ffffff1a}.announcement-modal__content pre{padding:16px;background:#f8fafc;border-radius:12px;overflow-x:auto;margin:16px 0}.announcement-modal__content pre code{background:transparent;padding:0;font-size:14px;line-height:1.6;font-variant-ligatures:contextual}.announcement-modal__content pre img{max-width:100%;border-radius:8px;margin:16px 0}.announcement-modal__content__footer{padding-top:16px;border-top:1px solid rgba(0,0,0,.04);overflow:hidden}[data-theme=dark] .announcement-modal__content__footer{border-top-color:#ffffff0d}.announcement-modal__content--list .ant-modal-body{padding-top:0}.announcement-modal__content__container--list{gap:0;max-height:70vh;display:flex;flex-direction:column}.announcement-modal__content__list-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:16px;margin-bottom:12px;border-bottom:1px solid var(--color-border);flex-shrink:0}[data-theme=dark] .announcement-modal__content__list-header{border-bottom-color:#ffffff14}.announcement-modal__content__list-title-wrap{display:flex;align-items:center;gap:8px}.announcement-modal__content__list-title{margin:0!important;font-weight:600!important}.announcement-modal__content__list-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;font-size:12px;font-weight:500;color:var(--color-primary);background:#1677ff1a;border-radius:9999px}[data-theme=dark] .announcement-modal__content__list-count{background:#1677ff33}.announcement-modal__content__empty{padding:32px 16px;text-align:center}.announcement-modal__content__list{display:flex;flex-direction:column;gap:16px;overflow-y:auto;overflow-x:hidden;padding-right:4px;margin-right:-4px}.announcement-modal__content__list::-webkit-scrollbar{width:6px}.announcement-modal__content__list::-webkit-scrollbar-track{background:transparent;border-radius:3px}.announcement-modal__content__list::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}[data-theme=dark] .announcement-modal__content__list::-webkit-scrollbar-thumb{background:#fff3}.announcement-modal__content__list-item{padding:16px 20px;border:1px solid var(--color-border);border-radius:16px;background:#00000005;transition:border-color .3s,box-shadow .3s}[data-theme=dark] .announcement-modal__content__list-item{background:#ffffff08;border-color:#ffffff0f}.announcement-modal__content__list-item:hover{border-color:#1677ff40;box-shadow:0 2px 8px #0000000a}[data-theme=dark] .announcement-modal__content__list-item:hover{border-color:#1677ff59;box-shadow:0 2px 12px #0003}.announcement-modal__content__list-item-header{margin-bottom:8px}.announcement-modal__content__list-item-title{margin:0 0 8px!important;font-weight:600!important;font-size:15px!important;line-height:1.4!important}.announcement-modal__content__pin{color:#ff4d4f;font-size:12px}.announcement-modal__content__tag{margin-inline-end:0}.announcement-modal__content__list-item-actions{display:block!important;text-align:right!important;margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.06)}[data-theme=dark] .announcement-modal__content__list-item-actions{border-top-color:#ffffff0f}.announcement-modal__content__read-btn{padding-left:0!important;padding-right:0!important;font-size:13px}.announcement-modal__content__content--preview{position:relative;max-height:88px;overflow:hidden;font-size:14px;line-height:1.55;color:var(--color-text-secondary)}[data-theme=dark] .announcement-modal__content__content--preview{color:#ffffffb3}.announcement-modal__content__preview-inner{display:-webkit-box;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.announcement-modal__content__preview-inner p{margin-bottom:4px}.announcement-modal__content__preview-inner p:last-child{margin-bottom:0}.announcement-modal__content__preview-inner h1,.announcement-modal__content__preview-inner h2,.announcement-modal__content__preview-inner h3,.announcement-modal__content__preview-inner h4,.announcement-modal__content__preview-inner ul,.announcement-modal__content__preview-inner ol,.announcement-modal__content__preview-inner blockquote,.announcement-modal__content__preview-inner pre{display:none}.theme-toggle{position:relative;display:inline-block}.theme-toggle__trigger{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--color-border);border-radius:12px;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .theme-toggle__trigger{border-color:#f0f6fc33;color:var(--color-text-primary)}.theme-toggle__trigger:hover{background:var(--color-bg-secondary);border-color:var(--color-border)}[data-theme=dark] .theme-toggle__trigger:hover{background:var(--color-bg-tertiary);border-color:var(--color-border)}.theme-toggle__trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.theme-toggle__icon{width:20px;height:20px}.theme-toggle__icon svg{width:100%;height:100%}.theme-toggle__backdrop{position:fixed;inset:0;z-index:999}.theme-toggle__menu{position:absolute;top:calc(100% + 8px);right:0;min-width:140px;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;z-index:1000;overflow:hidden;animation:slideDown .2s ease}[data-theme=dark] .theme-toggle__menu{background:var(--color-bg-secondary);border-color:var(--color-border);box-shadow:0 10px 40px #0006}.theme-toggle__option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;background:transparent;border:none;color:var(--color-text-primary);font-size:14px;text-align:left;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .theme-toggle__option{color:var(--color-text-primary)}.theme-toggle__option svg{width:18px;height:18px;flex-shrink:0}.theme-toggle__option:hover{background:var(--color-bg-secondary)}[data-theme=dark] .theme-toggle__option:hover{background:var(--color-bg-tertiary)}.theme-toggle__option--active{background:var(--color-bg-tertiary);font-weight:500;color:var(--color-primary)}[data-theme=dark] .theme-toggle__option--active{background:rgba(var(--color-primary-rgb),.15);color:var(--color-primary)}.theme-toggle__option--active svg{color:var(--color-primary)}[data-theme=dark] .theme-toggle__option--active svg{color:var(--color-primary)}@media(max-width:639px){.theme-toggle__trigger{width:36px;height:36px}.theme-toggle__icon{width:18px;height:18px}}.language-switcher{position:relative;display:inline-block}.language-switcher__trigger{display:flex;align-items:center;gap:8px;padding:8px 12px;background:transparent;border:1px solid var(--color-border);border-radius:12px;color:var(--color-text-secondary);font-size:14px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .language-switcher__trigger{border-color:#f0f6fc33;color:var(--color-text-primary)}.language-switcher__trigger:hover{background:var(--color-bg-secondary);border-color:var(--color-border)}[data-theme=dark] .language-switcher__trigger:hover{background:var(--color-bg-tertiary);border-color:var(--color-border)}.language-switcher__icon{font-size:18px;line-height:1}.language-switcher__label{min-width:50px;text-align:left}.language-switcher__arrow{transition:transform .3s cubic-bezier(.4,0,.2,1);color:var(--color-text-muted)}[data-theme=dark] .language-switcher__arrow{color:var(--color-text-muted)}.language-switcher__arrow--open{transform:rotate(180deg)}.language-switcher__backdrop{position:fixed;inset:0;z-index:999}.language-switcher__menu{position:absolute;top:calc(100% + 8px);right:0;min-width:140px;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;z-index:1000;overflow:hidden;animation:slideDown .2s ease}[data-theme=dark] .language-switcher__menu{background:var(--color-bg-secondary);border-color:var(--color-border);box-shadow:0 10px 40px #0006}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.language-switcher__option{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;background:transparent;border:none;color:var(--color-text-primary);font-size:14px;text-align:left;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .language-switcher__option{color:var(--color-text-primary)}.language-switcher__option:hover{background:var(--color-bg-secondary)}[data-theme=dark] .language-switcher__option:hover{background:var(--color-bg-tertiary)}.language-switcher__option--active{background:var(--color-bg-tertiary);font-weight:500;color:var(--color-primary)}[data-theme=dark] .language-switcher__option--active{background:rgba(var(--color-primary-rgb),.15);color:var(--color-primary)}.language-switcher__option-icon{font-size:18px;line-height:1}.language-switcher__option-label{flex:1}.language-switcher__check,[data-theme=dark] .language-switcher__check{color:var(--color-primary)}.unified-header{position:sticky;top:0;z-index:1020;height:64px;background:#fffc;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border-light)}[data-theme=dark] .unified-header{background:#161b22cc}.unified-header--auth{position:fixed;left:0;right:0}[data-theme=dark] .unified-header--auth{background:#0d1117cc;border-bottom-color:var(--terminal-border)}.unified-header--home{background:#fffffff2;border-bottom:1px solid rgba(0,0,0,.05)}[data-theme=dark] .unified-header--home{background:#161b22f2;border-bottom-color:#30363d80}.unified-header__container{width:100%;margin:0 auto;padding:0 16px}.unified-header--app .unified-header__container{max-width:none}@media(min-width:640px){.unified-header--app .unified-header__container{padding:0 24px}}@media(min-width:1024px){.unified-header--app .unified-header__container{padding:0 32px}}@media(min-width:1280px){.unified-header--app .unified-header__container{padding:0 48px}}.unified-header--auth .unified-header__container{max-width:none;width:100%;padding:0 16px}@media(min-width:640px){.unified-header--auth .unified-header__container{padding:0 24px}}@media(min-width:1024px){.unified-header--auth .unified-header__container{padding:0 32px}}@media(min-width:1280px){.unified-header--auth .unified-header__container{padding:0 48px}}@media(max-width:639px){.unified-header--auth .unified-header__container{padding:0 12px}}.unified-header--home .unified-header__container{max-width:1280px;padding:0 24px}@media(max-width:768px){.unified-header--home .unified-header__container{padding:0 16px}}.unified-header__content{display:flex;align-items:center;justify-content:space-between;height:64px}.unified-header__logo{flex-shrink:0}.unified-header__logo-link{display:flex;align-items:center;gap:8px;text-decoration:none}.unified-header__logo-img{height:28px;width:auto}.unified-header--home .unified-header__logo-img{height:32px}@media(max-width:640px){.unified-header--home .unified-header__logo-img{height:24px}}@media(max-width:640px){.unified-header--app .unified-header__logo-img{height:24px}}.unified-header__logo-text{font-size:14px;font-style:italic;font-weight:600;color:#3b82f6;letter-spacing:.3px;line-height:1}[data-theme=dark] .unified-header__logo-text{color:#60a5fa}@media(max-width:640px){.unified-header__logo-text{font-size:12px}}.unified-header__home-link{display:flex;align-items:center;color:var(--color-gray-700);font-size:14px;font-weight:500;text-decoration:none;padding:8px 12px;border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .unified-header__home-link{color:var(--color-text-primary)}.unified-header__home-link:hover{color:var(--color-primary-dark);background:#3b82f61a}[data-theme=dark] .unified-header__home-link:hover{color:var(--color-primary);background:#58a6ff26}.unified-header__home-nav{display:flex;align-items:center;gap:24px}@media(max-width:768px){.unified-header__home-nav{display:none}}.unified-header__home-nav .unified-header__home-link{padding:0;background:none;color:var(--color-gray-700);font-weight:500;text-decoration:none;transition:color .3s}[data-theme=dark] .unified-header__home-nav .unified-header__home-link{color:var(--color-gray-300)}.unified-header__home-nav .unified-header__home-link:hover{color:#3b82f6;background:none}.unified-header__home-nav .unified-header__home-link--active{color:#3b82f6}[data-theme=dark] .unified-header__home-nav .unified-header__home-link--active{color:var(--color-primary)}.unified-header__nav{display:none;align-items:center;gap:4px}@media(min-width:1024px){.unified-header__nav{display:flex}}.unified-header__nav-link{position:relative;display:flex;align-items:center;padding:8px 12px;color:var(--color-gray-700);font-size:14px;font-weight:500;text-decoration:none;border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .unified-header__nav-link{color:var(--color-text-primary)}.unified-header__nav-link:hover{color:var(--color-primary-dark);background:#3b82f61a}[data-theme=dark] .unified-header__nav-link:hover{color:var(--color-primary);background:#58a6ff26}.unified-header__nav-link--active{color:var(--color-primary-dark)}[data-theme=dark] .unified-header__nav-link--active{color:var(--color-primary)}.unified-header__nav-link--active:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--color-primary);border-radius:50%;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.unified-header__nav-link--admin,[data-theme=dark] .unified-header__nav-link--admin{color:var(--color-primary)}.unified-header__right{display:flex;align-items:center;gap:8px}@media(min-width:640px){.unified-header__right{gap:12px}}@media(min-width:768px){.unified-header__right{gap:16px}}.unified-header--auth .unified-header__right,.unified-header--home .unified-header__right{gap:12px}.unified-header__lang-wrapper{display:none}@media(min-width:640px){.unified-header__lang-wrapper{display:block}}.unified-header--auth .unified-header__lang-wrapper,.unified-header--home .unified-header__lang-wrapper{display:block}.unified-header__mobile-btn{display:flex;padding:8px;border-radius:12px;background:transparent;border:none;cursor:pointer;transition:background .3s cubic-bezier(.4,0,.2,1);color:var(--color-text-primary)}@media(min-width:1024px){.unified-header__mobile-btn{display:none}}.unified-header__mobile-btn:hover{background:var(--color-bg-secondary)}.unified-header__mobile-btn .icon{width:24px;height:24px;color:var(--color-gray-700)}[data-theme=dark] .unified-header__mobile-btn .icon{color:var(--color-gray-300)}.unified-header__badge-wrap{display:flex;align-items:center}.unified-header__icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:12px;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:background .3s,color .3s}.unified-header__icon-btn:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}[data-theme=dark] .unified-header__icon-btn{color:var(--color-gray-400)}[data-theme=dark] .unified-header__icon-btn:hover{color:var(--color-gray-200)}.unified-header__btn{padding:8px 20px;border-radius:8px;font-weight:500;text-decoration:none;transition:all .3s}.unified-header__btn--primary{background:linear-gradient(135deg,#60a5fa,#3b82f6);color:#fff}.unified-header__btn--primary:hover{box-shadow:0 4px 12px #60a5fa66;transform:translateY(-1px)}[data-theme=dark] .unified-header__btn--primary{background:linear-gradient(135deg,#60a5fa,#3b82f6)}.unified-header__user{position:relative}.unified-header__user-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;border-radius:12px;background:transparent;border:none;cursor:pointer;transition:background .3s cubic-bezier(.4,0,.2,1)}.unified-header__user-btn:hover{background:var(--color-bg-secondary)}.unified-header__username{display:none;color:var(--color-gray-700)}[data-theme=dark] .unified-header__username{color:var(--color-gray-300)}@media(min-width:768px){.unified-header__username{display:block;font-size:14px;font-weight:500}}.unified-header__admin-icon{display:flex;align-items:center;color:var(--color-primary)}.unified-header__admin-icon svg{width:16px;height:16px}.unified-header__dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 10px 40px #0000001f;overflow:hidden;z-index:50}[data-theme=dark] .unified-header__dropdown{background:var(--color-bg-secondary);border-color:var(--color-border);box-shadow:0 10px 40px #0006}.unified-header__dropdown-item{display:flex;align-items:center;width:100%;padding:12px 16px;color:var(--color-text-primary);font-size:14px;text-decoration:none;border:none;background:transparent;cursor:pointer;transition:background .3s cubic-bezier(.4,0,.2,1);text-align:left}.unified-header__dropdown-item:hover{background:var(--color-bg-secondary)}[data-theme=dark] .unified-header__dropdown-item:hover{background:var(--color-bg-tertiary)}.unified-header__dropdown-item--admin,[data-theme=dark] .unified-header__dropdown-item--admin{color:var(--color-primary)}.unified-header__dropdown-item--logout{color:var(--color-danger);border-top:1px solid var(--color-border)}.unified-header__mobile-menu{border-top:1px solid var(--color-border-light);background:#fff}[data-theme=dark] .unified-header__mobile-menu{background:var(--color-bg-secondary);border-top-color:var(--color-border)}@media(min-width:1024px){.unified-header__mobile-menu{display:none}}.unified-header__mobile-nav{padding:16px;display:flex;flex-direction:column;gap:4px}.unified-header__mobile-nav-link{display:flex;align-items:center;gap:12px;padding:12px;color:var(--color-gray-700);font-size:14px;font-weight:500;text-decoration:none;border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .unified-header__mobile-nav-link{color:var(--color-text-primary)}.unified-header__mobile-nav-link:hover{color:var(--color-primary-dark);background:#3b82f61a}[data-theme=dark] .unified-header__mobile-nav-link:hover{color:var(--color-primary);background:#58a6ff26}.unified-header__mobile-nav-link--active{color:var(--color-primary-dark);background:#3b82f61a}[data-theme=dark] .unified-header__mobile-nav-link--active{color:var(--color-primary);background:#58a6ff26}.unified-header__mobile-nav-link--admin,[data-theme=dark] .unified-header__mobile-nav-link--admin{color:var(--color-primary)}.unified-header__mobile-nav-link__icon{display:flex;align-items:center;width:20px;height:20px}.unified-header__mobile-nav-link__icon svg{width:100%;height:100%}.app-footer{background:#fffc;backdrop-filter:blur(12px);border-top:1px solid var(--color-border-light)}[data-theme=dark] .app-footer{background:#161b22cc}.app-footer__container{max-width:1280px;margin:0 auto;padding:32px 16px}@media(min-width:640px){.app-footer__container{padding:32px 24px}}@media(min-width:1024px){.app-footer__container{padding:32px}}.app-footer__content{display:grid;grid-template-columns:1fr;gap:32px}@media(min-width:768px){.app-footer__content{grid-template-columns:2fr 2fr}}.app-footer__logo{height:32px;width:auto;margin-bottom:16px}.app-footer__desc{color:var(--color-text-secondary);font-size:14px;line-height:1.625;max-width:400px}.app-footer__title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:16px}.app-footer__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.app-footer__item{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--color-text-secondary)}.app-footer__icon{font-size:16px}.app-footer__label{color:var(--color-text-muted)}.app-footer__link{color:var(--color-text-secondary);text-decoration:none;transition:color .3s cubic-bezier(.4,0,.2,1)}.app-footer__link:hover{color:var(--color-primary)}.app-footer__bottom{display:flex;flex-direction:column;gap:16px;margin-top:32px;padding-top:32px}@media(min-width:768px){.app-footer__bottom{flex-direction:row;justify-content:space-between;align-items:center}}.app-footer__copyright{color:var(--color-text-muted);font-size:14px;margin:0}.app-footer__links{display:flex;gap:24px}.app-footer__bottom-link{color:var(--color-text-muted);font-size:14px;text-decoration:none;transition:color .3s cubic-bezier(.4,0,.2,1)}.app-footer__bottom-link:hover{color:var(--color-text-primary)}.dashboard-layout{min-height:100vh;display:flex;flex-direction:column;background:var(--gradient-bg)}.dashboard-layout__main{flex:1;padding:32px 0 112px}.dashboard-layout__main--full-width{padding:0}.dashboard-layout__container{max-width:1280px;margin:0 auto;padding:0 16px 80px;width:100%}@media(min-width:640px){.dashboard-layout__container{padding:0 24px 80px}}@media(min-width:1024px){.dashboard-layout__container{padding:0 32px 80px}}.public-docs-layout{min-height:100vh;display:flex;flex-direction:column;background:var(--gradient-bg)}.public-docs-layout__main{flex:1;padding:32px 0 112px}.public-docs-layout__main--full-width{padding:0}.public-docs-layout__container{max-width:1280px;margin:0 auto;padding:0 16px 80px;width:100%}@media(min-width:640px){.public-docs-layout__container{padding:0 24px 80px}}@media(min-width:1024px){.public-docs-layout__container{padding:0 32px 80px}}.admin-tabs-wrapper{background:var(--tabs-bg);border-bottom:1px solid var(--tabs-border);padding:0 16px}.admin-tabs-wrapper .ant-tabs.ant-tabs-card .ant-tabs-nav{margin:0}.admin-tabs-wrapper .ant-tabs.ant-tabs-card .ant-tabs-nav:before{display:none}.admin-tabs-wrapper .ant-tabs.ant-tabs-card .ant-tabs-tab{background:transparent;border:none;border-radius:4px 4px 0 0;padding:8px 16px;margin:0 2px;transition:all .2s cubic-bezier(.4,0,.2,1);color:var(--tabs-text);border-bottom:2px solid transparent;position:relative}.admin-tabs-wrapper .ant-tabs.ant-tabs-card .ant-tabs-tab:before{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:transparent;transition:background-color .2s ease}.admin-tabs-wrapper .ant-tabs.ant-tabs-card .ant-tabs-tab:hover{background:var(--tabs-hover-bg);color:var(--tabs-active-text)}.admin-tabs-wrapper .ant-tabs.ant-tabs-card .ant-tabs-tab:hover:before{background:var(--tabs-hover-border)}.admin-tabs-wrapper .ant-tabs.ant-tabs-card .ant-tabs-tab.ant-tabs-tab-active{background:var(--tabs-active-bg);color:var(--tabs-active-text);font-weight:500}.admin-tabs-wrapper .ant-tabs.ant-tabs-card .ant-tabs-tab.ant-tabs-tab-active:before{background:var(--tabs-active-border)}.admin-tabs-wrapper .ant-tabs.ant-tabs-card .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--tabs-active-text)}.admin-tabs-wrapper .ant-tabs.ant-tabs-card .ant-tabs-tab-remove{margin-left:8px;color:var(--tabs-close-icon);opacity:.6;transition:all .2s ease}.admin-tabs-wrapper .ant-tabs.ant-tabs-card .ant-tabs-tab-remove:hover{opacity:1;color:var(--tabs-close-hover);background:var(--tabs-close-hover-bg)}.admin-tabs-wrapper .ant-tabs.ant-tabs-card .ant-tabs-nav-add{display:none}[data-theme=light] .admin-tabs-wrapper{--tabs-bg: #ffffff;--tabs-border: #e8e8e8;--tabs-text: #595959;--tabs-hover-bg: #f5f5f5;--tabs-hover-border: #d9d9d9;--tabs-active-bg: #fafafa;--tabs-active-text: #1890ff;--tabs-active-border: #1890ff;--tabs-close-icon: #8c8c8c;--tabs-close-hover: #ff4d4f;--tabs-close-hover-bg: rgba(255, 77, 79, .1)}[data-theme=dark] .admin-tabs-wrapper{--tabs-bg: #0d1117;--tabs-border: #21262d;--tabs-text: #7d8590;--tabs-hover-bg: #161b22;--tabs-hover-border: #30363d;--tabs-active-bg: #161b22;--tabs-active-text: #58a6ff;--tabs-active-border: #1f6feb;--tabs-close-icon: #7d8590;--tabs-close-hover: #f85149;--tabs-close-hover-bg: rgba(248, 81, 73, .15)}:root,[data-theme=light]{--color-primary: #3b82f6;--color-primary-dark: #2563eb;--color-primary-light: #60a5fa;--color-primary-rgb: 59, 130, 246;--color-accent: #06b6d4;--color-accent-dark: #0891b2;--color-accent-light: #22d3ee;--color-accent-rgb: 6, 182, 212;--color-success: #10b981;--color-success-dark: #059669;--color-success-light: #34d399;--color-success-rgb: 16, 185, 129;--color-warning: #f59e0b;--color-warning-dark: #d97706;--color-warning-light: #fbbf24;--color-warning-rgb: 245, 158, 11;--color-danger: #ef4444;--color-danger-dark: #dc2626;--color-danger-light: #f87171;--color-danger-rgb: 239, 68, 68;--color-info: #3b82f6;--color-info-dark: #2563eb;--color-info-light: #60a5fa;--color-info-rgb: 59, 130, 246;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-text-primary: #111827;--color-text-secondary: #4b5563;--color-text-muted: #9ca3af;--color-text-disabled: #d1d5db;--color-bg-primary: #ffffff;--color-bg-secondary: #f9fafb;--color-bg-tertiary: #f3f4f6;--color-bg-elevated: #ffffff;--color-border: #e5e7eb;--color-border-light: #f3f4f6;--color-border-dark: #d1d5db;--gradient-primary: linear-gradient(135deg, #3b82f6 0%, #06b6d4 100%);--gradient-primary-dark: linear-gradient(135deg, #2563eb 0%, #0891b2 100%);--gradient-bg: linear-gradient(to bottom, #f9fafb, #ffffff);--gradient-hero: linear-gradient(135deg, #3b82f6 0%, #06b6d4 100%);--glass-bg: rgba(255, 255, 255, .8);--glass-border: rgba(255, 255, 255, .2);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .15);--terminal-primary: #0969da;--terminal-green: #1a7f37;--terminal-blue: #0969da;--terminal-purple: #8250df;--terminal-orange: #bc4c00;--terminal-red: #cf222e;--terminal-gray: #57606a;--terminal-bg: #ffffff;--terminal-bg-secondary: #f6f8fa;--terminal-bg-gradient: linear-gradient(135deg, #ffffff 0%, #f6f8fa 100%);--terminal-header-bg: #f6f8fa;--terminal-border: #d0d7de;--terminal-text-muted: #656d76}[data-theme=dark]{--color-primary: #58a6ff;--color-primary-dark: #3794ff;--color-primary-light: #79c0ff;--color-primary-rgb: 88, 166, 255;--color-accent: #39c5cf;--color-accent-dark: #2fb3bc;--color-accent-light: #56d4dd;--color-accent-rgb: 57, 197, 207;--color-success: #3fb950;--color-success-dark: #2ea043;--color-success-light: #56d364;--color-success-rgb: 63, 185, 80;--color-warning: #d29922;--color-warning-dark: #bb8009;--color-warning-light: #e3b341;--color-warning-rgb: 210, 153, 34;--color-danger: #f85149;--color-danger-dark: #da3633;--color-danger-light: #ff6b6b;--color-danger-rgb: 248, 81, 73;--color-info: #58a6ff;--color-info-dark: #3794ff;--color-info-light: #79c0ff;--color-info-rgb: 88, 166, 255;--color-gray-50: #f0f6fc;--color-gray-100: #e6edf3;--color-gray-200: #c9d1d9;--color-gray-300: #b1bac4;--color-gray-400: #8b949e;--color-gray-500: #6e7681;--color-gray-600: #484f58;--color-gray-700: #30363d;--color-gray-800: #21262d;--color-gray-900: #161b22;--color-text-primary: #e6edf3;--color-text-secondary: #c9d1d9;--color-text-muted: #8b949e;--color-text-disabled: #6e7681;--color-bg-primary: #0d1117;--color-bg-secondary: #161b22;--color-bg-tertiary: #21262d;--color-bg-elevated: #161b22;--color-border: #30363d;--color-border-light: #21262d;--color-border-dark: #161b22;--gradient-primary: linear-gradient(135deg, #58a6ff 0%, #39c5cf 100%);--gradient-primary-dark: linear-gradient(135deg, #3794ff 0%, #2fb3bc 100%);--gradient-bg: linear-gradient(to bottom, #161b22, #0d1117);--gradient-hero: linear-gradient(135deg, #58a6ff 0%, #39c5cf 100%);--glass-bg: rgba(22, 27, 34, .8);--glass-border: rgba(255, 255, 255, .1);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .4);--terminal-primary: #58a6ff;--terminal-green: #7ee787;--terminal-blue: #79c0ff;--terminal-purple: #d2a8ff;--terminal-orange: #ffa657;--terminal-red: #ff7b72;--terminal-gray: #8b949e;--terminal-bg: #0d1117;--terminal-bg-secondary: #161b22;--terminal-bg-gradient: linear-gradient(135deg, #0d1117 0%, #161b22 100%);--terminal-header-bg: #161b22;--terminal-border: #30363d;--terminal-text-muted: #8b949e}:root{transition:background-color .3s ease,color .3s ease}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background-color:#f9fafb}.error-boundary__container{max-width:600px;width:100%;padding:2.5rem;text-align:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.error-boundary__title{margin:0 0 .75rem;font-size:2rem;font-weight:600;color:#111827}.error-boundary__subtitle{margin:0 0 2rem;font-size:1rem;color:#6b7280}.error-boundary__info{padding:1.5rem;margin-bottom:2rem;text-align:left;background-color:#f9fafb;border-radius:6px}.error-boundary__info-item{display:flex;gap:.75rem;margin-bottom:.75rem;font-size:.875rem}.error-boundary__info-item:last-child{margin-bottom:0}.error-boundary__info-item strong{min-width:80px;color:#374151}.error-boundary__info-item span{color:#6b7280;word-break:break-word}.error-boundary__description{margin:0 0 2rem;font-size:.875rem;color:#6b7280}.error-boundary__actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-bottom:2rem}.error-boundary__btn{padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;color:#fff;cursor:pointer;background-color:#6b7280;border:none;border-radius:6px;transition:all .2s}.error-boundary__btn:hover{background-color:#4b5563}.error-boundary__btn--retry{background-color:#3b82f6}.error-boundary__btn--retry:hover{background-color:#2563eb}.error-boundary__btn--back,.error-boundary__btn--home{background-color:#6b7280}.error-boundary__btn--back:hover,.error-boundary__btn--home:hover{background-color:#4b5563}.error-boundary__details{padding-top:2rem;margin-top:2rem;border-top:1px solid #e5e7eb}.error-boundary__details-toggle{padding:.5rem 1rem;font-size:.875rem;color:#3b82f6;cursor:pointer;background:none;border:none;transition:color .2s}.error-boundary__details-toggle:hover{color:#2563eb}.error-boundary__stack-wrapper{margin-top:1rem;text-align:left}.error-boundary__stack-wrapper strong{display:block;margin-bottom:.5rem;font-size:.875rem;color:#374151}.error-boundary__stack{padding:1rem;overflow-x:auto;font-size:.75rem;line-height:1.5;color:#374151;background-color:#f9fafb;border-radius:4px}@media(prefers-color-scheme:dark){.error-boundary{background-color:#111827}.error-boundary__container{background-color:#1f2937;box-shadow:0 1px 3px #00000080}.error-boundary__title{color:#f9fafb}.error-boundary__subtitle{color:#9ca3af}.error-boundary__info{background-color:#111827}.error-boundary__info-item strong{color:#d1d5db}.error-boundary__info-item span,.error-boundary__description{color:#9ca3af}.error-boundary__details{border-top-color:#374151}.error-boundary__stack-wrapper strong{color:#d1d5db}.error-boundary__stack{color:#d1d5db;background-color:#111827}}
