:root{--bg:#fafafa;--panel:#fff;--ink:#18181b;--muted:#5f5f6b;--line:#e4e4e7;--accent:#18181b;--accent-ink:#fff;--focus:#4f6fff;--warn:#8a4b00;--warn-bg:#fff3e0;--err:#b3261e;--radius:12px;--shadow:0 6px 24px #0000000f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--bg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}:root[data-theme=dark]{--bg:#0e0e11;--panel:#17171b;--ink:#f4f4f5;--muted:#a1a1aa;--line:#2a2a31;--accent:#f4f4f5;--accent-ink:#0e0e11;--focus:#8aa0ff;--warn:#ffb35c;--warn-bg:#3a2a12;--err:#ff8a80;--shadow:0 6px 24px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}.lite{flex-direction:column;height:100%;display:flex}.bar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;padding:8px 16px;display:flex}.brand{align-items:center;gap:8px;display:flex}.brand img{display:block}.badge{background:var(--warn-bg);color:var(--warn);border-radius:9px;padding:1px 6px;font-size:11px}.tagline{color:var(--muted);font-size:13px}.model-name input{font:inherit;color:inherit;background:0 0;border:1px solid #0000;border-radius:4px;padding:4px 6px;font-weight:600}.model-name input:hover,.model-name input:focus{border-color:var(--line)}.state{color:var(--muted);font-size:13px}.state.unsaved{color:var(--warn);font-weight:600}.actions{align-items:center;gap:8px;margin-left:auto;display:flex}button,select{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;border-radius:5px;padding:5px 10px;font-size:13px}button.small{padding:2px 6px;font-size:12px}button.icon{color:var(--muted);background:0 0;border:none;padding:2px 5px}button.icon:hover{color:var(--ink)}button.link{text-align:left;background:0 0;border:none;flex:1;padding:2px 0}.info{color:var(--muted);background:var(--panel);border-bottom:1px solid var(--line);margin:0;padding:4px 16px;font-size:12px}.checks.has-error{border-color:var(--err);color:var(--err)}.checks-panel{background:var(--bg);border-bottom:1px solid var(--line);max-height:40vh;padding:8px 16px 10px;overflow:auto}.checks-panel header{align-items:center;gap:10px;display:flex}.checks-panel h2{margin:0;font-size:14px}.checks-panel header .icon{margin-left:auto}.checks-panel ul{gap:4px;margin:6px 0 0;padding:0;list-style:none;display:grid}.checks-panel .finding{align-items:center;gap:8px;font-size:13px;display:flex}.checks-panel .severity{text-transform:uppercase;min-width:64px;color:var(--muted);flex:none;font-size:11px;font-weight:600}.checks-panel .error .severity{color:var(--err)}.checks-panel .warning .severity{color:var(--warn)}.checks-panel .note{color:var(--muted);margin:6px 0 0;font-size:13px}.restore{background:var(--warn-bg);color:var(--warn);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 16px;display:flex}.body{flex:1;min-height:0;display:flex}.side{border-left:1px solid var(--line);background:var(--panel);flex:none;width:300px;padding:8px 12px;overflow:auto}.side h2{justify-content:space-between;align-items:center;gap:6px;margin:8px 0;font-size:13px;display:flex}.side h2 small{color:var(--muted);font-weight:400}.side ul{margin:0;padding:0;list-style:none}.views li{border-radius:4px;align-items:center;padding:0 4px;display:flex}.views li.active{background:#e3ebfb;font-weight:600}.repo input[type=search]{width:100%;font:inherit;border:1px solid var(--line);border-radius:4px;padding:4px 6px;font-size:13px}.elements li{border-bottom:1px solid var(--line);padding:4px 2px;font-size:13px;display:grid}.elements .meta{color:var(--muted);font-size:11.5px}.elements .row-actions{grid-row:1/span 2;align-items:center;display:flex}.hint{color:var(--muted);font-size:12px}.editor{flex:1;min-width:0;position:relative}.editor iframe{border:0;width:100%;height:100%;display:block}.error{color:#8a1c1c;background:#fde7e7;border-radius:4px;padding:8px;position:absolute;top:8px;left:8px;right:8px}.foot{color:var(--muted);border-top:1px solid var(--line);background:var(--panel);padding:3px 16px;font-size:11.5px}.foot a{color:inherit}.lite.full .foot{display:none}.notices{z-index:10;gap:8px;display:grid;position:fixed;bottom:16px;right:16px}.notice{background:var(--ink);color:#fff;border-radius:6px;align-items:center;gap:10px;max-width:420px;padding:8px 12px;font-size:13px;display:flex}.notice button{color:var(--ink);background:#fff}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.menu{position:relative}.menu-items{z-index:20;background:var(--bg);border:1px solid var(--line);border-radius:6px;min-width:220px;padding:4px;display:grid;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 6px 20px #0000002e}.menu-items button,.menu-items a{text-align:left;color:var(--ink);background:0 0;border:none;border-radius:4px;padding:6px 10px;font-size:13px;text-decoration:none}.menu-items a:hover,.menu-items button:hover{background:var(--panel)}.side{position:relative}.hide-side{position:absolute;top:8px;right:8px}.side>section:first-of-type h2{margin-right:30px}.strip{background:var(--panel);width:18px;color:var(--muted);border-width:0 1px;border-radius:0;flex:none;padding:0}.strip:hover{color:var(--ink)}.filters{gap:6px;display:flex}.filters input{flex:1;min-width:0}.filters select{padding:3px 4px;font-size:12px}.group{margin-top:8px}.details{border:1px solid var(--line);background:var(--bg);border-radius:6px;margin:6px 0 10px;padding:8px;font-size:13px}.details-head{align-items:center;gap:6px;display:flex}.details-head strong{flex:1}.details h3,.group h3.sub{color:var(--muted);margin:8px 0 4px;font-size:12px;font-weight:600}.details ul,.relations{margin:0;padding:0;list-style:none}.details li,.relations li{padding:2px 0}.link-row{align-items:center;gap:4px;display:flex}.link-row a{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.link-form{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.link-form input{flex:120px;min-width:0;font-size:12px}.link-form .error{color:#b3261e;flex-basis:100%;margin:0;font-size:12px}.relations li{border-bottom:1px solid var(--line);padding:4px 2px;font-size:12.5px;display:grid}.dir{color:var(--muted)}button.name.link{text-align:left;color:inherit;padding:0;font-weight:400}.group-head{border:1px solid var(--line);background:var(--bg);text-align:left;border-left-width:5px;border-radius:4px;align-items:center;gap:6px;width:100%;font-weight:600;display:flex}.group-head .group-name{flex:1}.group-head .count{color:var(--muted);font-size:12px;font-weight:400}.elements li{grid-template-columns:auto 1fr auto;column-gap:6px}.elements .glyph{grid-area:1/1/span 2;align-items:center;display:flex}.elements .name,.elements .meta{grid-column:2}.elements .row-actions{grid-column:3}.lite.full .bar,.lite.full .info,.lite.full .restore{display:none}.full-bar{z-index:15;gap:6px;display:flex;position:fixed;top:8px;right:12px}.full-bar button{box-shadow:0 2px 8px #0003}.dialog-backdrop{z-index:30;background:#00000073;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog{background:var(--bg);color:var(--ink);border-radius:10px;width:100%;max-width:560px;max-height:90vh;padding:20px 24px;overflow:auto;box-shadow:0 12px 40px #0000004d}.dialog h2{margin:8px 0;font-size:20px}.dialog ol{padding-left:20px}.dialog .note{background:var(--warn-bg);color:var(--warn);border-radius:6px;padding:8px 10px}.dialog .small-print{color:var(--muted);font-size:12px}.dialog a{color:var(--accent)}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}:root[data-theme=dark] .dialog a{color:#8ab4ff}:root[data-theme=dark] .views li.active{background:#233453}@media (width<=760px){.side{width:200px}.tagline{display:none}}.relation-tools{align-items:center;gap:6px;margin-bottom:4px;display:flex}.relation-tools select{padding:2px 4px;font-size:12px}.menu-head{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;padding:6px 10px 2px;font-size:11px}.menu-note{color:var(--muted);padding:4px 10px;font-size:12px}.menu-items small{color:var(--muted)}.dialog .field{gap:4px;margin:8px 0;font-size:13px;display:grid}.dialog .field input{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:6px;padding:6px 8px}.dialog .dialog-error{color:#8a1c1c;background:#fde7e7;border-radius:4px;margin:6px 0;padding:6px 8px;font-size:13px}body,.lite{background:var(--bg)}.bar{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);gap:8px;margin:10px 12px 6px;padding:6px 10px}.brand strong{font-size:14px}.badge{border:1px solid var(--line);color:var(--muted);background:0 0}button,select{background:0 0;border-color:#0000;border-radius:8px;padding:6px 10px;transition:background-color .15s,border-color .15s,color .15s}button:hover,select:hover{background:var(--bg)}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}button.primary:hover{background:var(--accent);filter:brightness(1.15)}.info{background:0 0;border:0;border-radius:8px;margin:0 12px 6px}.body{gap:8px;margin:0 12px 12px}.editor{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}.side{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.strip{background:0 0;border:none}.checks-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);margin:0 12px 6px}.menu-items{box-shadow:var(--shadow);border-radius:10px}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.start{z-index:25;background:var(--bg);color:var(--ink);place-items:start center;padding:48px 16px;display:grid;position:fixed;inset:0;overflow:auto}.start .wrap{gap:26px;width:min(980px,100%);display:grid}.start h1{letter-spacing:-.02em;align-items:center;gap:12px;margin:0;font-size:30px;display:flex}.start .lead{color:var(--muted);max-width:64ch;margin:6px 0 0;font-size:15px;line-height:1.5}.start .choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.start .choice{text-align:left;border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:14px;align-content:start;gap:8px;padding:20px;display:grid}.start .choice:hover{border-color:var(--muted);background:var(--panel)}.start .choice b{font-size:16px}.start .choice span{color:var(--muted);font-size:13px;line-height:1.45}.start .choice i{border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.start .choice i svg{fill:none;stroke:#1d2330;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.start .choice i.new{background:#d9fbe8}.start .choice i.open{background:#ffe1ec}.start .choice i.example{background:#e3eaff}.start .row{grid-template-columns:1.4fr 1fr;gap:24px;display:grid}.start h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 10px;font-size:12px}.start ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.start .recent-item{border:1px solid var(--line);background:var(--panel);border-radius:10px;justify-content:space-between;gap:10px;width:100%;padding:10px 12px;font-size:14px;display:flex}.start .recent-item small{color:var(--muted)}.start .about p{color:var(--muted);margin:0 0 8px;font-size:14px;line-height:1.5}.start .about a{color:var(--ink)}.start .note{color:var(--muted);font-size:13px}.gallery{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.gallery .card{text-align:left;border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:0;display:grid;overflow:hidden}.gallery .card img,.gallery .card .thumb{aspect-ratio:16/10;object-fit:contain;border-bottom:1px solid var(--line);background:#fff;width:100%;display:block}.gallery .card b{padding:10px 12px 0;font-size:14px}.gallery .card span{color:var(--muted);padding:2px 12px 12px;font-size:12.5px}.empty-hint{z-index:2;pointer-events:none;border:1px dashed var(--line);color:#3f3f46;text-align:center;background:#ffffffeb;border-radius:12px;max-width:420px;padding:16px 20px;font-size:14px;line-height:1.5;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.empty-hint kbd{font:inherit;background:#f4f4f5;border:1px solid #d4d4d8;border-radius:6px;padding:1px 6px;font-size:12px}.editor{position:relative}@media (width<=900px){.start .choices,.start .row{grid-template-columns:1fr}}.dialog.wide{max-width:860px}
