.error-boundary{background:var(--bg-primary,#0a0a0a);z-index:var(--z-devtools);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.error-boundary__container{text-align:center;background:var(--surface-primary,#141414);border:1px solid var(--border-primary,#262626);border-radius:24px;flex-direction:column;align-items:center;max-width:480px;padding:48px 32px;animation:.4s ease-out error-boundary-fade-in;display:flex;box-shadow:0 0 0 1px #ffffff0d,0 20px 60px -20px #00000080,0 40px 100px -40px #0000004d}@keyframes error-boundary-fade-in{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.error-boundary__icon-wrapper{background:linear-gradient(135deg, var(--accent-red,#ef4444) 0%, var(--accent-orange,#f97316) 100%);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:24px;display:flex;position:relative}.error-boundary__icon-wrapper:before{content:"";background:linear-gradient(135deg, var(--accent-red,#ef4444) 0%, var(--accent-orange,#f97316) 100%);opacity:.3;filter:blur(12px);border-radius:50%;animation:2s ease-in-out infinite error-boundary-glow;position:absolute;inset:-4px}@keyframes error-boundary-glow{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.error-boundary__icon{color:#fff;z-index:1;width:36px;height:36px;animation:.5s ease-in-out error-boundary-shake;position:relative}@keyframes error-boundary-shake{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}.error-boundary__title{font-size:var(--text-xl,22px);font-weight:var(--font-semibold,600);color:var(--text-primary,#f5f5f5);margin:0 0 12px;line-height:1.3}.error-boundary__description{font-size:var(--text-base,16px);color:var(--text-secondary,#a3a3a3);max-width:360px;margin:0 0 24px;line-height:1.6}.error-boundary__details{background:var(--surface-secondary,#1a1a1a);border:1px solid var(--border-secondary,#262626);border-radius:12px;width:100%;margin-bottom:24px;overflow:hidden}.error-boundary__details-summary{font-size:var(--text-sm,14px);color:var(--text-muted,#737373);cursor:pointer;-webkit-user-select:none;user-select:none;padding:12px 16px;list-style:none;transition:background .15s}.error-boundary__details-summary:hover{background:var(--surface-hover,#1f1f1f)}.error-boundary__details-summary::-webkit-details-marker{display:none}.error-boundary__details[open] .error-boundary__details-summary{border-bottom:1px solid var(--border-secondary,#262626)}.error-boundary__details-content{font-size:var(--text-xs,12px);font-family:var(--font-mono,"SF Mono", Monaco, monospace);color:var(--text-secondary,#a3a3a3);background:var(--bg-primary,#0a0a0a);white-space:pre-wrap;word-break:break-word;max-height:150px;margin:0;padding:16px;overflow:auto}.error-boundary__actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.error-boundary__btn{font-size:var(--text-sm,14px);font-weight:var(--font-medium,500);cursor:pointer;border:none;border-radius:12px;outline:none;align-items:center;gap:8px;padding:12px 20px;transition:all .2s;display:inline-flex}.error-boundary__btn:focus-visible{outline:2px solid var(--accent-blue,#3b82f6);outline-offset:2px}.error-boundary__btn-icon{width:16px;height:16px;transition:transform .2s}.error-boundary__btn--primary{background:var(--accent-blue,#3b82f6);color:#fff}.error-boundary__btn--primary:hover{background:var(--accent-blue-hover,#2563eb);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.error-boundary__btn--primary:hover .error-boundary__btn-icon{transform:rotate(-180deg)}.error-boundary__btn--secondary{background:var(--surface-secondary,#1a1a1a);color:var(--text-primary,#f5f5f5);border:1px solid var(--border-primary,#262626)}.error-boundary__btn--secondary:hover{background:var(--surface-hover,#1f1f1f);border-color:var(--border-hover,#404040);transform:translateY(-1px)}.error-boundary__btn--secondary:hover .error-boundary__btn-icon{animation:.5s ease-in-out error-boundary-spin}@keyframes error-boundary-spin{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}@media (width<=480px){.error-boundary__container{border-radius:20px;padding:36px 24px}.error-boundary__icon-wrapper{width:64px;height:64px}.error-boundary__icon{width:28px;height:28px}.error-boundary__title{font-size:var(--text-lg,20px)}.error-boundary__description{font-size:var(--text-sm,14px)}.error-boundary__actions{flex-direction:column;width:100%}.error-boundary__btn{justify-content:center;width:100%}}
