:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1115;--panel:#161922;--border:#2a2f3a;--text:#e6e8ec;--muted:#8b93a3;--accent:#5b8cff;--ok:#3ecf8e;--err:#ff6b6b;--warning:#f2b84b;font-family:SF Mono,JetBrains Mono,ui-monospace,Menlo,Consolas,monospace}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);min-height:100vh;margin:0}#app{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 320px}header h1{margin:0 0 .4rem;font-size:1.4rem}header p{color:var(--muted);margin:0 0 1.5rem;font-size:.85rem}header a{color:var(--accent);text-decoration:none}header a:hover{text-decoration:underline}main{grid-template-columns:1fr 1fr;gap:1rem;display:grid;position:relative}main:before{content:"";background:var(--border);width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}@media (width<=720px){main{grid-template-columns:1fr}main:before{display:none}}.editor{flex-direction:column;gap:.4rem;display:flex}.editor label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem}.editor-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.entry-label{color:var(--accent);text-transform:uppercase;letter-spacing:.04em;align-self:center;margin-left:auto;font-size:.7rem;font-weight:700}textarea{background:var(--panel);border:1px solid var(--border);color:var(--text);resize:vertical;border-radius:8px;min-height:260px;padding:.75rem;font-family:inherit;font-size:.8rem;line-height:1.5}textarea:focus{border-color:var(--accent);outline:none}.editor-host{display:contents}.editor-host .cm-editor{min-height:40vh;max-height:60vh}.editor-host .cm-scroller{overflow:auto}.xsd-tabs{flex-wrap:wrap;gap:.3rem;display:flex}.xsd-tab{background:var(--panel);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:6px;align-items:center;gap:.35rem;padding:.3rem .5rem;font-family:inherit;font-size:.75rem;display:flex}.xsd-tab.active{color:var(--text);border-color:var(--accent)}.file-chip{background:var(--panel);border:1px solid var(--accent);color:var(--text);border-radius:6px;align-items:center;padding:.3rem .5rem;font-family:inherit;font-size:.75rem;display:flex}.xsd-tab .entry-star{cursor:pointer;color:var(--muted)}.xsd-tab .entry-star.is-entry{color:var(--accent)}.xsd-tab .remove-btn{cursor:pointer;color:var(--muted);font-weight:700;line-height:1}.xsd-tab .remove-btn:hover{color:var(--err)}.xsd-tab .add-btn{color:var(--accent);font-weight:700}.dropzone{border:1px dashed var(--border);color:var(--muted);text-align:center;cursor:pointer;border-radius:8px;padding:.5rem .75rem;font-size:.75rem}.dropzone.dragover{border-color:var(--accent);color:var(--accent);background:#5b8cff0f}.xsd-status{color:var(--muted);min-height:1.1rem;font-size:.75rem}.xsd-status.error{color:var(--err)}.xsd-status.warn{color:var(--accent)}.bottom-dock{background:var(--bg);border-top:1px solid var(--border);z-index:10;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #00000059}.dock-inner{max-width:1100px;margin:0 auto;padding:.75rem 1.5rem 1.25rem}.dock-bar{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.dock-title{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-left:auto;font-size:.7rem;font-weight:700}button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.6rem 1.4rem;font-family:inherit;font-size:.85rem;font-weight:600}button:disabled{opacity:.5;cursor:default}button:hover:not(:disabled){filter:brightness(1.1)}#status{color:var(--muted);font-size:.8rem}.results{border:1px solid var(--border);background:var(--panel);border-radius:8px;min-height:3rem;max-height:220px;padding:.75rem 1rem;font-size:.85rem;overflow-y:auto}.result-line{border-bottom:1px solid var(--border);padding:.4rem 0}.result-line:last-child{border-bottom:none}.badge{border-radius:4px;margin-right:.5rem;padding:.15rem .5rem;font-size:.7rem;font-weight:700;display:inline-block}.badge.valid{color:var(--ok);background:#3ecf8e26}.badge.invalid{color:var(--err);background:#ff6b6b26}.diagnostic{color:var(--err);border-radius:4px;margin:.1rem -.5rem 0;padding:.25rem .5rem;font-size:.8rem}.diagnostic:hover{background:#ffffff0a}.diagnostic .loc{color:var(--muted)}.diagnostic-warning{color:var(--warning)}.placeholder{color:var(--muted)}
