:root{--bg: #ffffff;--text: #111827;--muted: #6b7280;--surface: #f3f4f6;--border: #e5e7eb;--primary: #993333;--primary-contrast: #ffffff;--link: #1d4ed8;--accent: #f59e0b;--header-h: 56px;--menu-h: 44px;--footer-h: 40px}[data-theme=dark]{--bg: #0b0f19;--text: #e5e7eb;--muted: #9ca3af;--surface: #111827;--border: #1f2937;--primary: #7a1b1b;--primary-contrast: #f3f4f6;--link: #93c5fd;--accent: #fde68a}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{max-width:1600px;margin:0 auto;padding:1rem;padding-bottom:calc(var(--footer-h) + .5rem)}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}button,.button,input[type=submit]{background:var(--primary);color:var(--primary-contrast);border:1px solid var(--primary);padding:.5rem .75rem;border-radius:.5rem;cursor:pointer}button:hover,.button:hover,input[type=submit]:hover{filter:brightness(1.05)}input[type=text],input[type=password],input[type=email],select,textarea{background:var(--surface);color:var(--text);border:1px solid var(--border);padding:.5rem .75rem;border-radius:.5rem}.layout{display:flex;flex-direction:column;min-height:100%}.app-header{display:flex;align-items:center;justify-content:space-between;background:var(--primary);color:var(--primary-contrast);width:100%;position:sticky;top:0;z-index:1000;min-height:var(--header-h)}.header-right{margin-left:auto;display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem}.theme-toggle{appearance:none;background:transparent;border:1px solid rgba(255,255,255,.25);color:var(--primary-contrast);padding:.25rem .5rem;border-radius:.375rem}.user-label{font-weight:600}.logout-link{font-weight:700;color:var(--primary-contrast);cursor:pointer}.logout-link:hover{text-decoration:underline}.app-footer{position:fixed;left:0;right:0;bottom:0;background:var(--primary);color:var(--primary-contrast);z-index:1000;height:var(--footer-h);display:flex;align-items:center}.app-footer-inner{max-width:1280px;margin:0 auto;width:100%;padding:0 1rem;display:flex;justify-content:center;align-items:center;text-align:center}.main-content{display:block;background:var(--bg);color:var(--text);padding:1rem}.content{min-height:50vh}@media(max-width:767px){#root{padding:.5rem}.main-content{flex-direction:column}}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:var(--muted)}.menu{display:none;background-color:var(--primary);color:var(--primary-contrast);padding:1em;border-radius:0;position:sticky;top:var(--header-h);z-index:900}.menu ul{list-style:none;padding:0;margin:0}.menu li{margin:.75em 0;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:.5em}.menu a{text-decoration:none;color:var(--primary-contrast)}.menu a:hover{text-decoration:underline}.hamburger{display:block;cursor:pointer;padding:.75em 1em;background-color:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:.5rem;position:sticky;top:var(--header-h);z-index:950}.menu.open{display:block}@media(min-width:768px){.hamburger{display:none}.menu{display:block;width:100%;border-radius:0}.menu ul{display:flex;flex-direction:row;align-items:center;gap:1rem}.menu li{margin:0;padding:.25em .75em .25em 0;border-bottom:none;border-right:1px solid rgba(255,255,255,.2)}.menu li:last-child{border-right:none;padding-right:0}}.filter-bar{display:grid;grid-template-columns:1fr auto;gap:.5rem .75rem;align-items:end;background:var(--surface);border:1px solid var(--border);border-radius:.5rem;padding:.75rem;margin-bottom:1rem}.filter-bar h3{grid-column:1 / -1;margin:0;font-size:1.1rem}.filter-bar label{font-size:.85rem;color:var(--muted)}.filter-bar input[type=text]{width:100%}.table-wrap{width:100%;overflow-x:auto}.table{width:100%;border-collapse:collapse;background:var(--bg);color:var(--text)}.table th,.table td{text-align:left;vertical-align:top}.table th.header-cell{background:var(--primary);color:var(--primary-contrast);padding:8px;font-weight:500;font-size:clamp(10px,1vw,14px);line-height:1.1}.table td.cell{padding:8px;border-top:1px solid var(--border);font-weight:400;font-size:clamp(10px,1vw,14px);line-height:1.1}.btn{display:inline-flex;align-items:center;justify-content:center}.btn.btn-sm{padding:.25rem .4rem;border-radius:.375rem}.icon-img{width:18px;height:18px;display:block}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.modal-panel{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:.5rem;width:min(100%,1000px);max-height:85vh;overflow:hidden;box-shadow:0 10px 24px #0003}.modal-header{display:flex;align-items:center;justify-content:space-between;background:var(--surface);border-bottom:1px solid var(--border);padding:.5rem .75rem}.modal-title{margin:0;font-size:1rem}.modal-close{background:transparent;color:var(--text);border:1px solid var(--border);line-height:1;padding:0 .5rem;border-radius:.375rem}.modal-body{padding:.75rem;overflow:auto}.modal-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.modal-block{border:1px solid var(--border);border-radius:.5rem;padding:.5rem}.modal-block-title{font-weight:600;margin-bottom:.25rem;color:var(--muted)}.modal-block pre{white-space:pre-wrap;background:var(--surface);padding:.5rem;border-radius:.375rem}.modal-dl{display:grid;grid-template-columns:max-content 1fr;gap:.25rem .75rem;margin:0}.modal-dl dt{color:var(--modal-muted)}.modal-dl dd{margin:0;overflow-wrap:anywhere}@media(max-width:900px){.modal-row{grid-template-columns:1fr}}.footer-spacer{height:calc(var(--footer-h) + 8px)}.pagination-container{display:flex;align-items:center;gap:8px}.pagination-info{color:var(--muted)}.pagination-size{margin-left:auto}.pagination-size label{margin-right:6px;color:var(--muted);font-size:12px}:root{color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--modal-overlay-bg: rgba(0, 0, 0, .6);--modal-panel-bg: #2b2f36;--modal-text: #e6e6e6;--modal-muted: #c9c9c9;--modal-border: #3a3f46;--modal-shadow: 0 12px 32px rgba(0,0,0,.5);--modal-pre-bg: #1b1f24;--modal-pre-text: #e6e6e6;--bp-sm: 480px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1280px;--space-1: clamp(4px, .5vw, 8px);--space-2: clamp(8px, 1vw, 12px);--space-3: clamp(12px, 1.5vw, 16px);--space-4: clamp(16px, 2vw, 24px);--radius: 8px;--icon-size: clamp(14px, 2vw, 18px);--font-xxs: clamp(10px, 1vw, 12px);--font-xs: clamp(11px, 1.1vw, 13px);--font-sm: clamp(12px, 1.3vw, 14px);--font-md: clamp(14px, 1.6vw, 16px)}:root[data-theme=light],html[data-theme=light],body[data-theme=light]{color:#213547;background-color:#fff;--modal-overlay-bg: rgba(0, 0, 0, .5);--modal-panel-bg: #ffffff;--modal-text: #1a1a1a;--modal-muted: #333333;--modal-border: #e6e6e6;--modal-shadow: 0 12px 32px rgba(0,0,0,.35);--modal-pre-bg: #ffffff;--modal-pre-text: #111111}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}.icon{display:inline-block;width:16px;height:16px;background-color:currentColor;mask:var(--icon) center / contain no-repeat;-webkit-mask:var(--icon) center / contain no-repeat}.icon-img{width:var(--icon-size);height:var(--icon-size);display:inline-block;vertical-align:text-bottom}.btn .icon-img,button .icon-img{width:calc(var(--icon-size) * 1.2);height:calc(var(--icon-size) * 1.2)}.container{width:min(100%,1200px);margin-inline:auto;padding-inline:var(--space-3)}.row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-block:var(--space-3)}.filter-bar input[type=text]{width:min(100%,520px);padding:var(--space-2);font-size:var(--font-md)}.modal-overlay{position:fixed;inset:0;background:var(--modal-overlay-bg);display:grid;place-items:center;padding:var(--space-3);z-index:1000}.modal-panel{width:min(92vw,960px);max-height:min(85vh,800px);background:var(--modal-panel-bg);color:var(--modal-text);border:1px solid var(--modal-border);box-shadow:var(--modal-shadow);border-radius:var(--radius);padding:var(--space-3);overflow:hidden;display:flex;flex-direction:column}.modal-header{padding:4px 7px;border-bottom:1px solid var(--modal-border);display:flex;justify-content:space-between;align-items:center}.modal-title{margin:0;font-size:15px;font-weight:600;color:var(--modal-text)}.modal-close{border:none;background:transparent;font-size:17.6px;cursor:pointer;line-height:1;color:var(--modal-muted)}.modal-body{max-height:70vh;overflow:auto}.modal-row{padding:12px 10px 10px;display:flex;gap:16px;align-items:stretch;flex-wrap:wrap}.modal-block{flex:1 1 0;min-width:0}.modal-block-title{font-weight:600;margin:6px 0 4px;color:var(--modal-muted)}.modal-body pre{background:var(--modal-pre-bg);color:var(--modal-pre-text);padding:var(--space-2);border-radius:var(--radius);border:1px solid var(--modal-border);font-size:var(--font-xxs);line-height:1.55;max-height:63vh;overflow:auto;resize:vertical;box-shadow:inset 0 1px 2px #0000000f}@media(min-width:768px){.modal-row{flex-wrap:nowrap}}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;min-width:960px}@media(max-width:480px){.table{min-width:720px}}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:var(--space-2) var(--space-3);font-size:var(--font-md);font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff;--modal-overlay-bg: rgba(0, 0, 0, .5);--modal-panel-bg: #ffffff;--modal-text: #1a1a1a;--modal-muted: #333333;--modal-border: #e6e6e6;--modal-shadow: 0 12px 32px rgba(0,0,0,.35);--modal-pre-bg: #ffffff;--modal-pre-text: #111111}a:hover{color:#747bff}button{background-color:#f9f9f9}}
