:root{margin:0;padding:0;color-scheme:only light;--zl-green: #57aa27;--zl-green-dark: #4a9722;--zl-green-50: #eaf6ef;--zl-yellow: #ffd84f;--zl-yellow-600: #ffcc33;--zl-yellow-disabled: #f5e9a3;--py-blue: #0055a4;--py-blue-hover: #0a6acc;--py-flame: #e94e1b;--text: #333333;--text-2: #555555;--text-muted: var(--text-2);--border: #cfe9c5;--zebra: #fffbe5;--surface: #f7fbf6;--surface-alt: #ffffff;--shadow-soft: 0 24px 48px rgba(44, 67, 52, .12);--focus-ring: 0 0 0 2px var(--py-blue), 0 0 0 4px #eaf2fb}body{margin:0;background:var(--zl-green-50);color:var(--text);font-family:Inter,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}a{color:var(--py-blue);text-decoration:none;transition:color .2s ease}a:hover,a:focus-visible{color:var(--py-blue-hover)}.app-error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--zl-green-50);padding:24px}.app-error-boundary__card{background:var(--surface-alt);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow-soft);padding:36px 32px;max-width:520px;text-align:center}.app-error-boundary__logo{width:72px;height:72px;object-fit:contain;margin-bottom:12px}.app-error-boundary__card h1{margin:0 0 12px;font-size:1.5rem}.app-error-boundary__card p{margin:0 0 24px;color:var(--text-muted)}.app-error-boundary__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.app-error-boundary__card button{border:none;border-radius:999px;padding:12px 24px;font-size:1rem;background:var(--py-blue);color:#fff;cursor:pointer}.app-error-boundary__card button:hover,.app-error-boundary__card button:focus-visible{background:var(--py-blue-hover)}.app-error-boundary__link{display:inline-flex;align-items:center;padding:12px 24px;border-radius:999px;border:1px solid var(--border);color:var(--text);font-weight:600;text-decoration:none}.app-error-boundary__link:hover,.app-error-boundary__link:focus-visible{background:var(--zl-green-50);color:var(--text)}.app-error-boundary__detail{margin-top:20px;text-align:left;font-size:.85rem;color:var(--text-muted)}.app-error-boundary__detail summary{cursor:pointer}.app-error-boundary__detail code{display:block;margin-top:8px;padding:10px 12px;border-radius:12px;background:var(--zl-green-50);overflow-wrap:anywhere}
