:root{color-scheme:light;--bg:#fff;--text:#111827;--muted:#374151;--border:#6b7280;--panel:#f9fafb;--link:#0048a8;--button:#1f2937;--button-text:#fff;--focus:#005fcc;--error-bg:#fee2e2;--error:#7f1d1d;--ok-bg:#dcfce7;--ok:#14532d}
*{box-sizing:border-box}html{font-size:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.6}a{color:var(--link);text-decoration:underline;text-underline-offset:.18em}a:hover{text-decoration-thickness:.15em}.skip-link{position:absolute;left:.75rem;top:-5rem;background:#000;color:#fff;padding:.75rem 1rem;z-index:1000}.skip-link:focus{top:.75rem}.wrap{max-width:72rem;margin:0 auto;padding:1rem}.site-header{border-bottom:2px solid #d1d5db;background:#f3f4f6}.site-title{font-size:1.35rem;font-weight:800;margin:0}.nav-list{display:flex;flex-wrap:wrap;gap:.5rem 1rem;list-style:none;margin:.75rem 0 0;padding:0}.nav-list a[aria-current="page"]{font-weight:800;text-decoration-thickness:.18em}main{padding-block:1rem 3rem}h1{font-size:2rem;line-height:1.2;margin:.5rem 0 1rem}h2{font-size:1.4rem;line-height:1.3}p{max-width:72ch}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.75rem;margin:1rem 0}.metric,.card,fieldset{border:1px solid var(--border);border-radius:.35rem;background:var(--panel)}.metric{padding:.8rem}.metric strong{display:block;font-size:1.1rem}.card,fieldset{padding:1rem;margin:1.25rem 0}legend{font-size:1.2rem;font-weight:800;padding:0 .35rem}label{display:block;font-weight:700;margin:.8rem 0 .25rem}.help{display:block;color:var(--muted);font-size:.95rem;margin:.2rem 0 .5rem}input,select,textarea,button{font:inherit;color:inherit}input[type="text"],input[type="password"],input[type="number"],select,textarea{width:100%;max-width:100%;min-height:2.75rem;border:2px solid #4b5563;border-radius:.25rem;background:#fff;padding:.55rem .65rem}textarea{min-height:10rem;resize:vertical}input[type="checkbox"]{width:1.25rem;height:1.25rem;vertical-align:middle;margin-right:.45rem}.check-label{display:flex;align-items:flex-start;gap:.35rem;font-weight:600}.check-label input{flex:0 0 auto;margin-top:.2rem}button{min-height:2.75rem;min-width:2.75rem;border:2px solid var(--button);border-radius:.25rem;background:var(--button);color:var(--button-text);font-weight:800;padding:.55rem 1rem;cursor:pointer}button:hover{background:#111827}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #000;outline-offset:3px;box-shadow:0 0 0 6px #ffbf47}.notice,.error{border:2px solid currentColor;border-radius:.3rem;padding:.8rem 1rem;margin:1rem 0}.notice{background:var(--ok-bg);color:var(--ok)}.error{background:var(--error-bg);color:var(--error);font-weight:700}.result{border:2px solid #4b5563;border-radius:.3rem;padding:1rem;background:#fff;white-space:pre-wrap;overflow-wrap:anywhere;max-height:34rem;overflow:auto}.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1rem}.provider-list{columns:2;max-width:40rem}.configured{font-weight:800}.not-configured{color:var(--muted)}table{border-collapse:collapse;width:100%;margin:1rem 0}caption{text-align:left;font-weight:800;font-size:1.15rem;margin-bottom:.5rem}th,td{border:1px solid var(--border);padding:.55rem;text-align:left;vertical-align:top}th{background:#e5e7eb}.table-wrap{overflow-x:auto}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.footer{border-top:1px solid #d1d5db;padding:1.5rem 0;color:var(--muted)}@media (max-width:40rem){.wrap{padding:.8rem}.provider-list{columns:1}h1{font-size:1.7rem}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (forced-colors:active){button{forced-color-adjust:auto}.notice,.error{border:2px solid CanvasText}}
.radio-label{display:flex;align-items:flex-start;gap:.45rem;font-weight:600}.radio-label input{flex:0 0 auto;width:1.25rem;height:1.25rem;margin-top:.2rem}.nested{margin:.9rem 0;padding:.8rem}.status-list{max-width:52rem}.status-list div{display:grid;grid-template-columns:minmax(12rem,1fr) 2fr;gap:.75rem;border-bottom:1px solid #d1d5db;padding:.5rem 0}.status-list dt{font-weight:800}.status-list dd{margin:0;overflow-wrap:anywhere}@media(max-width:40rem){.status-list div{grid-template-columns:1fr;gap:.1rem}}
.conversation-list{padding-left:1.5rem}.conversation-list .card{padding:1rem;margin:1rem 0}.conversation-list h2{margin:.1rem 0 .35rem}.pagination{display:flex;flex-wrap:wrap;gap:.8rem 1rem;list-style:none;padding:0;margin:1.5rem 0}.message{border:1px solid var(--border);border-radius:.4rem;padding:1rem;margin:1rem 0;max-width:68rem}.message.user{background:#f3f4f6}.message.assistant{background:#fff}.message-role{font-size:1rem;margin:0 0 .4rem}.message-content{white-space:pre-wrap;overflow-wrap:anywhere}.message-meta{font-size:.9rem;color:var(--muted);margin:.75rem 0 0}.danger-zone{border-top:2px solid #9b1c1c;margin-top:2rem;padding-top:1rem}.danger{background:#7f1d1d;border-color:#7f1d1d;color:#fff}.danger:hover{background:#651515}
.inline-form { margin-top: .75rem; }
.button-row { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; }
.button-row form { margin: 0; }
.secondary{background:#fff;color:#111827;border-color:#4b5563}.secondary:hover{background:#f3f4f6}.button-link{display:inline-flex;align-items:center;min-height:2.75rem;border:2px solid #1f2937;border-radius:.25rem;padding:.45rem .9rem;font-weight:800}.tall{min-height:24rem}.meta{color:var(--muted);font-size:.95rem}.spacing-compact .card,.spacing-compact fieldset,.spacing-compact .message{padding:.65rem;margin:.7rem 0}.pref-large-text{font-size:125%}.pref-high-contrast{--bg:#fff;--text:#000;--muted:#111;--border:#000;--panel:#fff;--link:#002f6c;--button:#000;--button-text:#fff}.pref-high-contrast .site-header,.pref-high-contrast th{background:#fff;border-color:#000}.pref-reduced-motion *, .pref-reduced-motion *::before,.pref-reduced-motion *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}details{margin:.8rem 0}summary{font-weight:700;cursor:pointer}input[type=file]{display:block;width:100%;padding:.55rem 0;min-height:2.75rem}.button-row input[type=text]{min-width:min(30rem,100%)}

.preview-image{max-width:100%;height:auto;display:block;}
.copy-toolbar{margin:.5rem 0 1rem}.message-actions{margin-top:.65rem}.code-block{margin:1rem 0;border:1px solid var(--border);border-radius:.35rem;background:#fff;overflow:hidden}.code-toolbar{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem .6rem;border-bottom:1px solid var(--border);background:#f3f4f6}.code-language{font-weight:700}.code-block pre{margin:0;padding:1rem;overflow:auto;white-space:pre;max-height:34rem;background:#fff;color:#111827}.code-block code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace}.sr-status:not(:empty){margin:.5rem 0;padding:.5rem;border-left:4px solid var(--focus)}
@media (forced-colors:active){.code-block,.code-toolbar{border-color:CanvasText}}

.totp-qr{display:block;max-width:min(100%,320px);height:auto;margin:1rem 0;border:1px solid #6b7280;background:#fff;padding:.5rem}.break-word{display:block;overflow-wrap:anywhere;word-break:break-word;padding:.75rem;background:#f3f4f6;color:#111827;border-radius:.35rem}.button-link{display:inline-block;padding:.65rem 1rem;border-radius:.35rem;background:#0048a8;color:#fff;text-decoration:none;font-weight:600}.button-link:focus-visible{outline:3px solid #111827;outline-offset:3px}
.page-heading-row{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:flex-start;justify-content:space-between}.page-heading-row h1{margin-bottom:.35rem}.primary-action{margin:.5rem 0}.conversation-tabs{border-bottom:1px solid var(--border);margin:1rem 0 1.25rem}.conversation-tabs .nav-list{margin-bottom:.6rem}.conversation-card{list-style-position:outside}.conversation-card .meta{margin:.2rem 0 .8rem}.conversation-actions{border-top:1px solid var(--border);padding-top:.65rem;margin-top:1rem}.danger-zone-inline{border-left:3px solid #9b1c1c;padding-left:.85rem;margin-top:1rem}
