@keyframes react-loading-skeleton{to{transform:translate(100%)}}.react-loading-skeleton{--base-color:#ebebeb;--highlight-color:#f5f5f5;--animation-duration:1.5s;--animation-direction:normal;--pseudo-element-display:block;background-color:var(--base-color);-webkit-user-select:none;user-select:none;border-radius:.25rem;width:100%;line-height:1;display:inline-flex;position:relative;overflow:hidden}.react-loading-skeleton:after{content:" ";display:var(--pseudo-element-display);background-repeat:no-repeat;background-image:var(--custom-highlight-background,linear-gradient(90deg,var(--base-color)0%,var(--highlight-color)50%,var(--base-color)100%));height:100%;animation-name:react-loading-skeleton;animation-direction:var(--animation-direction);animation-duration:var(--animation-duration);animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;top:0;left:0;right:0;transform:translate(-100%)}@media (prefers-reduced-motion){.react-loading-skeleton{--pseudo-element-display:none}}
.error-fallback-container{background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);justify-content:center;align-items:center;min-height:400px;padding:2rem;display:flex}.error-fallback-card{text-align:center;background:#fff;border-radius:12px;width:100%;max-width:600px;padding:3rem 2rem;animation:.4s ease-out slideUp;box-shadow:0 10px 40px #0000001a}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.error-icon{margin-bottom:1.5rem;font-size:4rem;animation:2s infinite bounce}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.error-title{color:#2c3e50;margin-bottom:1rem;font-size:1.8rem;font-weight:700}.error-message{color:#555;margin-bottom:.5rem;font-size:1.1rem;line-height:1.6}.error-sub-message{color:#777;margin-bottom:2rem;font-size:.95rem;line-height:1.5}.error-details{text-align:left;background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin:1.5rem 0;padding:1rem}.error-details summary{cursor:pointer;color:#495057;-webkit-user-select:none;user-select:none;font-weight:600}.error-details pre{color:#e74c3c;white-space:pre-wrap;word-wrap:break-word;margin-top:1rem;font-size:.85rem;overflow-x:auto}.error-actions{margin-top:2rem}.retry-button,.back-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.875rem 2rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.retry-button:hover,.back-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.retry-button:active,.back-button:active{transform:translateY(0)}.retry-button i,.back-button i{font-size:1.1rem}.auto-retry-message{color:#667eea;background:#f0f3ff;border:2px solid #667eea;border-radius:8px;align-items:center;gap:.5rem;padding:.875rem 2rem;font-size:1rem;font-weight:600;animation:1.5s infinite pulse;display:inline-flex}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@media (max-width:768px){.error-fallback-container{min-height:300px;padding:1rem}.error-fallback-card{padding:2rem 1.5rem}.error-icon{font-size:3rem}.error-title{font-size:1.5rem}.error-message{font-size:1rem}.error-sub-message{font-size:.9rem}.retry-button,.back-button{padding:.75rem 1.5rem;font-size:.95rem}}
.skeleton-container{gap:20px;padding:20px;display:flex}.skeleton-content{flex:2}.skeleton-sidebar{flex-direction:column;flex:1;gap:10px;display:flex}
.carousel .control-arrow,.carousel.carousel-slider .control-arrow{-o-transition:all .25s ease-in;opacity:.4;filter:alpha(opacity=40);z-index:2;cursor:pointer;background:0 0;border:0;font-size:32px;transition:all .25s ease-in;position:absolute;top:20px}.carousel .control-arrow:focus,.carousel .control-arrow:hover{opacity:1;filter:alpha(opacity=100)}.carousel .control-arrow:before,.carousel.carousel-slider .control-arrow:before{content:"";border-top:8px solid #0000;border-bottom:8px solid #0000;margin:0 5px;display:inline-block}.carousel .control-disabled.control-arrow{opacity:0;filter:alpha(opacity=0);cursor:inherit;display:none}.carousel .control-prev.control-arrow{left:0}.carousel .control-prev.control-arrow:before{border-right:8px solid #fff}.carousel .control-next.control-arrow{right:0}.carousel .control-next.control-arrow:before{border-left:8px solid #fff}.carousel-root{outline:none}.carousel{width:100%;position:relative}.carousel *{box-sizing:border-box}.carousel img{pointer-events:none;width:100%;display:inline-block}.carousel .carousel{position:relative}.carousel .control-arrow{background:0 0;border:0;outline:0;margin-top:-13px;font-size:18px;top:50%}.carousel .thumbs-wrapper{margin:20px;overflow:hidden}.carousel .thumbs{-o-transition:all .15s ease-in;white-space:nowrap;list-style:none;transition:all .15s ease-in;position:relative;transform:translate(0,0)}.carousel .thumb{-o-transition:border .15s ease-in;white-space:nowrap;border:3px solid #fff;margin-right:6px;padding:2px;transition:border .15s ease-in;display:inline-block;overflow:hidden}.carousel .thumb:focus{border:3px solid #ccc;outline:none}.carousel .thumb.selected,.carousel .thumb:hover{border:3px solid #333}.carousel .thumb img{vertical-align:top}.carousel.carousel-slider{margin:0;position:relative;overflow:hidden}.carousel.carousel-slider .control-arrow{color:#fff;margin-top:0;padding:5px;font-size:26px;top:0;bottom:0}.carousel.carousel-slider .control-arrow:hover{background:#0003}.carousel .slider-wrapper{-o-transition:height .15s ease-in;width:100%;margin:auto;transition:height .15s ease-in;overflow:hidden}.carousel .slider-wrapper.axis-horizontal .slider{-ms-box-orient:horizontal;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:flex}.carousel .slider-wrapper.axis-horizontal .slider .slide{flex-flow:column}.carousel .slider-wrapper.axis-vertical{-ms-box-orient:horizontal;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:flex}.carousel .slider-wrapper.axis-vertical .slider{flex-direction:column}.carousel .slider{width:100%;margin:0;padding:0;list-style:none;position:relative}.carousel .slider.animated{-o-transition:all .35s ease-in-out;transition:all .35s ease-in-out}.carousel .slide{text-align:center;min-width:100%;margin:0;position:relative}.carousel .slide img{vertical-align:top;border:0;width:100%}.carousel .slide iframe{border:0;width:calc(100% - 80px);margin:0 40px 40px;display:inline-block}.carousel .slide .legend{-o-transition:all .5s ease-in-out;color:#fff;text-align:center;opacity:.25;transition:all .5s ease-in-out;-o-transition:opacity .35s ease-in-out;background:#000;border-radius:10px;width:90%;margin-left:-45%;padding:10px;font-size:12px;transition:opacity .35s ease-in-out;position:absolute;bottom:40px;left:50%}.carousel .control-dots{text-align:center;z-index:1;width:100%;margin:10px 0;padding:0;position:absolute;bottom:0}@media (min-width:960px){.carousel .control-dots{bottom:0}}.carousel .control-dots .dot{-o-transition:opacity .25s ease-in;opacity:.3;filter:alpha(opacity=30);cursor:pointer;background:#fff;border-radius:50%;width:8px;height:8px;margin:0 8px;transition:opacity .25s ease-in;display:inline-block;box-shadow:1px 1px 2px #000000e6}.carousel .control-dots .dot.selected,.carousel .control-dots .dot:hover{opacity:1;filter:alpha(opacity=100)}.carousel .carousel-status{text-shadow:1px 1px 1px #000000e6;color:#fff;padding:5px;font-size:10px;position:absolute;top:0;right:0}.carousel:hover .slide .legend{opacity:1}
