:root{--brand-cheek:#7a1f1f;--brand-cream:#f4e5bd;--brand-navy:#234976;--brand-navy-deep:#1a3554;--brand-tan:#d9b47b;--bg:var(--bg-0);--bg-0:#fefcf6;--bg-1:#fff;--bg-2:#f6efde;--bg-3:#ece4d0;--fg-0:#234976;--fg-1:#4a6585;--fg-2:var(--fg-1);--fg-dim:#6b7a8b;--fg-muted:#4f6076;--border:#23497624;--border-1:var(--border);--border-soft:#23497612;--border-strong:#2349764d;--accent:var(--brand-navy);--accent-1:var(--accent);--accent-bg:#2349761a;--accent-fg:#1a3554;--accent-grad:linear-gradient(135deg, #234976 0%, #d9b47b 100%);--accent-grad-soft:linear-gradient(135deg, #23497615 0%, #d9b47b22 100%);--accent-soft:#23497614;--accent-soft-border:#23497647;--link:var(--brand-navy);--link-soft:#2349761a;--navy:var(--brand-navy);--navy-deep:#1a3554;--err:#c72d24;--err-bg:#c72d241a;--err-bg-strong:#c72d242e;--err-border:#c14a3e;--err-fg:#8e1a14;--good:#2d8a3e;--warn:#b58a1a;--radius-lg:14px;--radius-md:8px;--radius-pill:999px;--radius-sm:4px;--shadow-lg:0 24px 60px #2349762e;--shadow-md:0 10px 28px #2349761f;--shadow-sm:0 1px 2px #2349760f;--shadow-xs:0 1px 2px #2349760f;--text:var(--fg-0);--text-base:13px;--text-lg:17px;--text-md:15px;--text-sm:12px;--text-xl:20px;--text-2xl:22px;--text-3xl:26px;--text-xs:11px;--gutter:var(--space-3);--space-0:4px;--space-1:8px;--space-2:12px;--space-3:16px;--space-4:24px;--space-5:32px;--dur-base:.32s;--dur-fast:.12s;--dur-slow:.64s;--ease:cubic-bezier(.32, .72, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--transition:.15s;--transition-fast:.12s;--head-h:44px;--left-w:320px;--rail-w:44px;--topbar-h:44px;--card-bg:var(--bg-1);--font-mono:var(--mono);--hover:var(--bg-2);--input-bg:var(--bg-1);--media-radius:8px;--media-shadow:0 6px 22px #0000002e;--mono:ui-monospace, "SF Mono", Consolas, "Roboto Mono", monospace;--sans:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, sans-serif;--danger:var(--err);--ok:var(--good);--fg-3:var(--fg-dim);--text-muted:var(--fg-muted);--panel-2:var(--bg-2);--op-disabled:.45;--spinner-size:16px;--muted:var(--fg-muted);--stage:var(--stage-brief);--stage-brief:#d9b47b;--stage-done:#c99a3f;--stage-film:var(--brand-navy);--stage-storyboard:#3b6ea5}.muted{color:var(--fg-muted)}.small{font-size:var(--text-xs)}.btn{padding:6px var(--space-2);border-radius:var(--radius-sm);font:500 13px/1 var(--sans);background:var(--bg-2);color:var(--fg-1);border:1px solid var(--border);cursor:pointer;transition:background var(--transition) var(--ease), border-color var(--transition) var(--ease), color var(--transition) var(--ease), transform var(--transition-fast) var(--ease), box-shadow var(--transition) var(--ease);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:var(--border);text-decoration:none}.btn:active:not(:disabled){transform:translateY(.5px)scale(.99)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--brand-navy);color:#fff;border:none;box-shadow:inset 0 1px #ffffff2e,0 4px 14px #23497633}.btn-primary:hover:not(:disabled){background:var(--brand-navy-deep);text-decoration:none;transform:translateY(-1px);box-shadow:inset 0 1px #ffffff38,0 8px 22px #23497647}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:inset 0 1px #ffffff2e,0 3px 10px #23497638}.btn-ghost{border-color:var(--border);color:var(--fg-1);background:0 0}.btn-ghost:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:0 0}.btn-danger{background:var(--err);color:#fff;border-color:#0000}.btn-danger:hover:not(:disabled){background:#c93632}.btn-lg{font-size:var(--text-base);padding:11px 22px}.al-ico{vertical-align:-.15em;flex:none}button>.al-ico:only-child,a>.al-ico:only-child,span>.al-ico:only-child{vertical-align:middle}:root{--chev-right:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9.5 5.5 6.5 6.5-6.5 6.5'/%3E%3C/svg%3E");--chev-down:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 9.5 12 16l6.5-6.5'/%3E%3C/svg%3E")}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font:13px/1.5 var(--sans);color:var(--fg-0);background:var(--bg-0)}input,textarea,select{font:inherit;background:var(--bg-0);color:var(--fg-0);border:1px solid var(--border);padding:6px var(--space-1);transition:border-color var(--transition) var(--ease), box-shadow var(--transition) var(--ease);border-radius:6px}input:focus,textarea:focus,select:focus{outline:1px solid var(--accent);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.mono{font-family:var(--mono)}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:1px solid var(--accent);outline-offset:0;border-color:var(--accent)}.btn-sm{padding:5px var(--space-2);font-size:var(--text-sm)}.modal-backdrop{z-index:1000;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-shell{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:92vw;max-height:90vh;overflow:auto}.ctx-backdrop{z-index:1000;position:fixed;inset:0}.ctx-menu{z-index:1001;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:180px;padding:var(--space-0) 0;font-size:var(--text-base);font-family:var(--sans);position:fixed}.ctx-menu .item{cursor:pointer;color:var(--fg-1);justify-content:space-between;align-items:center;gap:var(--space-4);padding:7px 14px;display:flex}.ctx-menu .item:hover{background:var(--bg-2)}.ctx-menu .item.disabled{color:var(--fg-muted);cursor:not-allowed}.ctx-menu .item.disabled:hover{background:0 0}.ctx-menu .item.muted{color:var(--fg-muted)}.ctx-menu .sep{background:var(--border);height:1px;margin:var(--space-0) 0}.ctx-menu .shortcut{font-size:var(--text-xs);color:var(--fg-muted);font-family:var(--mono)}@keyframes spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{width:var(--spinner-size);height:var(--spinner-size);opacity:.85;vertical-align:middle;border:2px solid;border-top-color:#0000;border-radius:50%;animation:.7s linear infinite spinner-rotate;display:inline-block}.app-brand{align-items:center;gap:var(--space-1);color:var(--fg-0);text-decoration:none;display:inline-flex}.app-brand-mark{filter:drop-shadow(0 0 8px #23497633);font-size:22px}.app-brand-text{letter-spacing:-.2px;font-size:16px;font-weight:700}.pill{padding:var(--space-0) 10px;background:var(--accent-grad-soft);border:1px solid var(--accent-soft-border);font-size:var(--text-xs);color:var(--accent);border-radius:999px;font-weight:500;display:inline-block}.card{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color var(--transition) var(--ease), transform var(--transition) var(--ease), box-shadow var(--transition) var(--ease)}.card:hover{border-color:var(--accent-soft-border);box-shadow:var(--shadow-sm)}.card.lift:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.editable{cursor:text;border-bottom:1px dashed #0000;transition:border-color .15s}.editable:hover{border-bottom-color:var(--fg-muted)}.inline-edit{background:var(--bg-2);border:1px solid var(--accent);color:var(--fg-0);font:inherit;border-radius:4px;width:100%;padding:2px 6px}.studio-mockup{width:100%;max-width:1080px;box-shadow:0 1px 0 #ffffff80 inset, 0 24px 60px #23497624, 0 0 0 1px var(--border);background:var(--bg-1);border-radius:12px;margin:0 auto;overflow:hidden}.studio-mockup-stage{aspect-ratio:1440/900;background:var(--bg-1);width:100%;position:relative;overflow:hidden}.studio-mockup-track{will-change:transform;width:100%;height:100%;transition:transform .6s cubic-bezier(.4,0,.2,1);display:flex}.studio-mockup-img{object-fit:cover;-webkit-user-select:none;user-select:none;pointer-events:none;flex:0 0 100%;width:100%;height:100%;display:block}.studio-mockup-controls{justify-content:space-between;align-items:center;gap:var(--space-2);padding:10px var(--space-3);background:var(--bg-2);border-top:1px solid var(--border);font-family:var(--sans);font-size:var(--text-base);display:flex}.studio-mockup-caption{color:var(--fg-1);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.studio-mockup-dots{flex-shrink:0;gap:6px;display:inline-flex}.studio-mockup-dot{background:var(--border-strong);cursor:pointer;border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:background .18s,transform .18s}.studio-mockup-dot:hover{background:var(--fg-muted)}.studio-mockup-dot.is-active{background:var(--accent);transform:scale(1.3)}@media (width<=560px){.studio-mockup-controls{font-size:var(--text-sm);padding:var(--space-1) var(--space-2)}}.auth-page{background:var(--bg-0);flex-direction:column;min-height:100vh;display:flex}.auth-header{align-items:center;gap:var(--space-4);padding:20px var(--space-5);display:flex}.auth-header-nav{align-items:center;gap:var(--space-4);font-size:14px;display:flex}.auth-header-nav a{color:var(--fg-1);padding:var(--space-0) 6px;border-radius:4px;text-decoration:none;transition:color .15s,background .15s}.auth-header-nav a:hover{color:var(--fg-0);background:var(--bg-2)}.auth-header-right{align-items:center;gap:10px;margin-left:auto;display:flex}@media (width<=640px){.auth-header-nav{display:none}}.auth-main{padding:var(--space-4) var(--space-5) 64px;flex:1;justify-content:center;align-items:center;display:flex}.auth-form-col{justify-content:center;width:100%;max-width:460px;display:flex}.auth-main--split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:64px;max-width:1200px;margin:0 auto;display:grid}.auth-main--split .auth-form-col{justify-content:flex-end;max-width:none}.auth-main--split .auth-form-col .auth-card{width:100%;max-width:460px}.auth-mockup-col{justify-content:flex-start;align-items:center;display:flex}.auth-mockup-col .mockup{max-width:560px}.auth-card{background:var(--bg-1);border:1px solid var(--border);width:100%;padding:var(--space-5) 28px;border-radius:10px;flex-direction:column;gap:6px;display:flex;box-shadow:0 10px 30px #2349761a}.auth-card h1{margin:0 0 var(--space-3);color:var(--fg-0);letter-spacing:-.02em;font-size:22px;font-weight:600}.auth-oauth-row{gap:var(--space-1);margin-bottom:var(--space-0);flex-direction:column;display:flex}.auth-oauth-btn{background:var(--bg-2);border:1px solid var(--border);width:100%;color:var(--fg-0);cursor:pointer;font-size:14px;font-family:var(--sans);border-radius:6px;justify-content:center;align-items:center;gap:10px;padding:10px 14px;transition:background .15s,border-color .15s;display:flex}.auth-oauth-btn:hover:not(:disabled){background:var(--bg-3);border-color:var(--fg-muted)}.auth-oauth-btn:disabled{cursor:not-allowed;opacity:.55}.auth-oauth-tag{font-size:var(--text-xs);color:var(--fg-muted);background:var(--bg-3);white-space:nowrap;border-radius:999px;margin-left:auto;padding:2px 6px}.auth-oauth-icon{flex-shrink:0;width:18px;height:18px}.auth-divider{align-items:center;gap:var(--space-2);margin:14px 0 var(--space-0);font-size:var(--text-xs);letter-spacing:.08em;color:var(--fg-muted);display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-card label{font-size:var(--text-base);color:var(--fg-1);margin-top:var(--space-2);margin-bottom:var(--space-0);font-weight:500}.auth-card input{background:var(--bg-1);border:1px solid var(--border);width:100%;color:var(--fg-0);font-size:14px;font-family:var(--sans);border-radius:6px;padding:11px 14px;transition:border-color .15s,background .15s,box-shadow .15s}.auth-card input:focus{border-color:var(--accent);background:var(--bg-1);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.auth-card input:disabled{opacity:.6;cursor:not-allowed}.auth-helper{font-size:var(--text-sm);color:var(--fg-muted);margin-top:6px;line-height:1.4}.auth-card .auth-submit{width:100%;padding:11px var(--space-3);justify-content:center;margin-top:20px;font-size:14px}.auth-msg{font-size:var(--text-sm);padding:var(--space-1) 10px;word-break:break-word;border-radius:4px;margin-top:10px;line-height:1.4}.auth-msg.err{background:var(--err-bg);color:var(--err-fg);border:1px solid var(--err-border)}.auth-msg.info{background:var(--accent-soft);color:var(--accent-fg);border:1px solid var(--accent-soft-border)}.auth-legal{text-align:center;font-size:var(--text-sm);margin-top:14px;line-height:1.5}.auth-legal a{color:var(--accent)}.auth-switch{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-soft);text-align:center;font-size:var(--text-base)}.auth-switch a{color:var(--accent)}@media (width<=960px){.auth-main--split{grid-template-columns:1fr;gap:0}.auth-main--split .auth-form-col{justify-content:center}.auth-mockup-col{display:none}}@media (width<=640px){.auth-header{padding:var(--space-3) 20px}.auth-main{padding:var(--space-3) 20px 48px}.auth-card{padding:var(--space-4) 20px}.auth-card h1{font-size:var(--text-xl)}}.auth-captcha{justify-content:center;min-height:65px;margin:14px 0 6px;display:flex}.legal-footer{border-top:1px solid var(--border);text-align:center;font-size:var(--text-md);color:var(--fg-muted);margin-top:4rem;padding:1.6rem 1rem 2.5rem}.legal-footer a{color:var(--fg-muted)}.legal-footer a:hover{color:var(--fg-0)}.legal-footer .sep{opacity:.5;margin:0 .6rem}.legal-footer-meta{font-size:var(--text-base);opacity:.75;margin-top:.7rem}.topbar{align-items:center;gap:var(--space-4);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);z-index:50;background:#fefcf6e0;padding:14px 28px;display:flex;position:sticky;top:0}.topbar-links{align-items:center;gap:var(--space-4);font-size:14px;display:flex}.topbar-links a{color:var(--fg-1);padding:var(--space-0) 6px;border-radius:4px;text-decoration:none;transition:color .15s,background .15s}.topbar-links a:hover{color:var(--fg-0);background:var(--bg-2)}.topbar-section-title{color:var(--fg-0);padding:var(--space-0) 6px;font-size:14px;font-weight:600}.topbar-right{align-items:center;gap:10px;margin-left:auto;display:flex}@media (width<=640px){.topbar{padding:var(--space-2) var(--space-3);gap:var(--space-2)}.topbar-links{display:none}}.account-page{background:var(--bg-0);min-height:100vh;color:var(--fg-0);padding-bottom:4rem}.account-toast{color:var(--fg-0);cursor:pointer;z-index:1000;background:#28a745eb;border-radius:6px;max-width:90vw;padding:.7rem 1.3rem;position:fixed;top:1rem;left:50%;transform:translate(-50%);box-shadow:0 4px 24px #0006}.account-toast.error{background:#dc3545eb}.account-shell{max-width:60rem;margin:0 auto;padding:2.5rem 1.5rem 0}.account-beta-banner{color:#ffd866;font-size:var(--text-md);background:#ffc8001a;border:1px solid #ffc8004d;border-radius:8px;margin-bottom:1.25rem;padding:.8rem 1rem;line-height:1.5}.account-shell h1{background:var(--accent-grad);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 1.5rem;font-size:clamp(1.6rem,3vw,2.1rem)}.account-card{background:var(--bg-1);border:1px solid var(--border);border-radius:10px;margin-bottom:1.25rem;padding:1.5rem 1.6rem}.account-card h3{font-size:var(--text-md);text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);margin:0 0 .85rem;font-weight:600}.account-balance{flex-direction:column;gap:.4rem;display:flex}.account-balance-amount{letter-spacing:-.02em;background:var(--accent-grad);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(2.2rem,5vw,3rem);font-weight:700}.account-balance-meta{color:var(--fg-muted);font-size:var(--text-md);align-items:center;gap:.5rem;display:flex}.account-balance-meta .pill{background:var(--accent-grad);color:var(--fg-0);font-size:var(--text-xs);border-radius:999px;padding:.1rem .5rem}.account-balance-actions{flex-wrap:wrap;gap:.6rem;margin-top:1rem;display:flex}.account-low-balance{font-size:var(--text-md);color:#ffd866;background:#ffc8001a;border:1px solid #ffc8004d;border-radius:6px;margin-top:1rem;padding:.6rem .85rem}.account-low-balance code{background:#ffffff14;border-radius:3px;padding:0 .3rem}.account-grid{grid-template-columns:1fr;gap:1.25rem;margin-bottom:1.25rem;display:grid}@media (width>=720px){.account-grid{grid-template-columns:1fr 1.6fr}}.account-plan-name{margin-bottom:.6rem;font-size:1.4rem;font-weight:600}.account-table{border-collapse:collapse;width:100%;font-size:var(--text-md)}.account-table td,.account-table th{border-bottom:1px solid var(--border-soft);text-align:left;padding:.42rem 0}.account-table th{color:var(--fg-muted);font-weight:500;font-size:var(--text-base);text-transform:uppercase;letter-spacing:.03em}.account-table td.num,.account-table th.num{text-align:right;font-variant-numeric:tabular-nums}.account-link-row{font-size:var(--text-md);color:var(--accent);margin-top:.85rem;display:inline-block}.account-topups tr.status-pending td{opacity:.7}.account-topups tr.status-failed td{opacity:.6;text-decoration:line-through}.account-topups .pill.status-succeeded{color:#56d364;background:#28a7452e}.account-topups .pill.status-pending{color:#ffd866;background:#ffc80026}.account-topups .pill.status-failed{color:#ff6e6e;background:#dc35452e}.account-topups .pill{font-size:var(--text-sm);letter-spacing:.02em;border-radius:999px;padding:.1rem .5rem}.account-foot{text-align:center;margin-top:2rem}.voice-clone-registered{padding:10px var(--space-2);background:#28a74514;border:1px solid #28a7454d;border-radius:6px;flex-direction:column;gap:6px;display:flex}.voice-clone-ref{font-style:italic}.voice-clone-actions{gap:var(--space-1);margin-top:6px;display:flex}.voice-clone-form{gap:var(--space-1);flex-direction:column;display:flex}.voice-clone-form input[type=text]{padding:var(--space-1) 10px;background:var(--bg-0);border:1px solid var(--border);color:var(--fg-0);font-size:var(--text-md);border-radius:6px}.voice-clone-form input[type=text]:focus{border-color:var(--accent);outline:none}.voice-clone-form .btn{align-self:flex-start}.account-error{color:#ff8e8a;padding:var(--space-1) var(--space-2);font-size:var(--text-md);background:#dc35452e;border:1px solid #dc354573;border-radius:6px;margin-top:.6rem}.account-hint{color:#56d364;padding:var(--space-1) var(--space-2);font-size:var(--text-md);background:#28a7451f;border:1px solid #28a74559;border-radius:6px;margin-top:.6rem}.apikey-status{gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);background:#2349760f;border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.apikey-last4{background:var(--bg-2);padding:2px var(--space-1);border-radius:4px;font-size:.92em}.apikey-actions{gap:var(--space-1);flex-wrap:wrap;display:flex}.apikey-empty{align-items:flex-start;gap:var(--space-1);flex-direction:column;display:flex}.apikey-empty .btn{align-self:flex-start}.apikey-reveal{gap:var(--space-2);border:1px solid var(--accent-soft-border);background:#d9b47b1a;border-radius:8px;flex-direction:column;padding:14px;display:flex}.apikey-reveal-warning{color:var(--accent-fg);font-weight:600}.apikey-reveal-row{gap:var(--space-1);align-items:stretch;display:flex}.apikey-reveal-input{font-family:var(--mono);font-size:var(--text-base);padding:var(--space-1) 10px;background:var(--bg-1);border:1px solid var(--border);color:var(--fg-0);border-radius:6px;flex:1}.apikey-reveal-input:focus{outline:2px solid var(--accent)}.apikey-reveal-actions{justify-content:flex-end;display:flex}.legal-page{background:var(--bg-0);min-height:100vh;color:var(--fg-0);padding-bottom:2rem}.legal-shell{max-width:46rem;font-size:var(--text-md);margin:0 auto;padding:2.5rem 1.5rem 0;line-height:1.7}.legal-shell h1{background:var(--accent-grad);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 .5rem;font-size:clamp(1.7rem,3.5vw,2.3rem)}.legal-en{-webkit-text-fill-color:var(--fg-muted);background:0 0;font-size:.7em;font-weight:400}.legal-meta{color:var(--fg-muted);font-size:var(--text-base);border-bottom:1px solid var(--border-soft);margin:0 0 2rem;padding-bottom:1rem}.legal-shell section{margin-bottom:1.8rem}.legal-shell h2{color:var(--fg-0);margin:0 0 .6rem;font-size:1.15rem;font-weight:600}.legal-shell h3{font-size:var(--text-md);color:var(--fg-0);margin:1rem 0 .4rem;font-weight:600}.legal-shell p{margin:0 0 .7rem}.legal-shell ul{margin:.4rem 0 .9rem;padding-left:1.4rem}.legal-shell ul li{margin-bottom:.35rem}.legal-shell a{color:var(--accent)}.legal-shell code{background:var(--bg-1);border:1px solid var(--border-soft);border-radius:3px;padding:.05rem .35rem;font-size:.88em}.legal-strong{color:var(--fg-0);font-weight:600}.legal-foot{border-top:1px solid var(--border-soft);text-align:center;margin-top:2.5rem;padding-top:1.2rem}.error-boundary{padding:var(--space-5);background:var(--bg-1);border:1px solid var(--err-border);border-radius:var(--radius-md);max-width:720px;color:var(--fg-0);font-family:var(--sans);margin:60px auto}.error-boundary h2{color:var(--err);margin-top:0}.error-boundary code{font-family:var(--mono)}.error-boundary details{margin-top:var(--space-3)}.error-boundary summary{cursor:pointer}.error-boundary pre{font-size:var(--text-xs);background:var(--bg-0);border-radius:var(--radius-sm);margin-top:var(--space-1);color:var(--err-fg);padding:10px;overflow:auto}.error-boundary-actions{gap:10px;margin-top:20px;display:flex}.error-boundary-actions button{padding:var(--space-1) var(--space-3);color:var(--fg-0);border-radius:var(--radius-sm);cursor:pointer;font-family:var(--sans);font-size:var(--text-base);border:none}.error-boundary-actions button.primary{background:var(--accent)}.error-boundary-actions button.secondary{background:var(--border)}
