*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:#1d1d1f;background:#f4f4f2;font:14px/1.4 system-ui,-apple-system,Segoe UI,Arial Hebrew,Arial,sans-serif}.app{grid-template:"h h h"48px"l m r"1fr/290px 1fr 300px;height:100%;display:grid}header{background:#fff;border-bottom:1px solid #ddd;grid-area:h;align-items:center;gap:8px;padding:0 12px;display:flex}h1{margin:0 12px 0 0;font-size:16px}.spacer{flex:1}aside{background:#fff;padding:10px;overflow:auto}.left{border-inline-end:1px solid #ddd;grid-area:l}.right{border-inline-start:1px solid #ddd;grid-area:r}main{grid-area:m;min-width:0;min-height:0;display:flex;position:relative}.pane{flex:1;min-width:0;position:relative}main.split .pane+.pane{border-inline-start:1px solid #ccc}.plan,canvas{touch-action:none;width:100%;height:100%;display:block}.hint{bottom:6px;color:#555;background:#fffc;border-radius:6px;padding:2px 8px;font-size:12px;position:absolute;inset-inline-start:8px}.toast{top:10px;color:#fff;background:#222;border-radius:6px;padding:6px 12px;position:absolute;inset-inline-end:10px}section{margin-bottom:14px}h2{text-transform:uppercase;letter-spacing:.04em;color:#666;margin:0 0 6px;font-size:12px}h2 small{text-transform:none;letter-spacing:0;font-weight:400}button,.btn,select,input[type=text],input:not([type]),input[type=number]{font:inherit;color:inherit;background:#fff;border:1px solid #c9c9c9;border-radius:6px;padding:4px 9px}button,.btn{cursor:pointer}button:hover,.btn:hover{background:#f0f0ee}button:disabled{opacity:.4;cursor:default}button.on{color:#fff;background:#1d1d1f;border-color:#1d1d1f}.tabs{gap:4px;display:flex}.lib{gap:4px;display:grid}.lib button{text-align:start;align-items:center;gap:8px;display:flex}.lib small{color:#777;font-size:11px;display:block}.sw{border:1px solid #0003;border-radius:3px;flex:none;width:14px;height:14px}.row{align-items:center;gap:6px;margin:6px 0;display:flex}.row.wrap{flex-wrap:wrap}.row input,.row select{flex:1;min-width:0}.kv{justify-content:space-between;gap:8px;margin:2px 0;font-size:13px;display:flex}.small{color:#555;font-size:12px}.muted{color:#888;margin:4px 0 0;font-size:12px}.warn{color:#b45309;background:#fef3c7;border-radius:6px;padding:4px 8px;font-size:12px}.ok{color:#166534;background:#dcfce7;border-radius:6px;padding:4px 8px;font-size:12px}input.bad{border-color:#d32f2f}.opts label{margin:3px 0;display:block}.stats{grid-template-columns:1fr 1fr;gap:6px;display:grid}.stats div{color:#555;background:#f4f4f2;border-radius:8px;padding:6px 8px;font-size:12px}.stats b{color:#111;font-size:20px;display:block}.findings,.people{margin:6px 0;padding:0;list-style:none}.findings li{cursor:pointer;border-radius:6px;margin:3px 0;padding:4px 8px;font-size:12px}.findings .error{color:#991b1b;background:#fee2e2}.findings .warn{color:#92400e;background:#fef3c7}.findings .ok{color:#166534;background:#dcfce7}.people li{align-items:center;gap:4px;margin:4px 0;display:flex}.people li span{text-overflow:ellipsis;flex:1;overflow:hidden}.people select{width:110px}label.num{color:#666;flex-direction:column;flex:1;font-size:11px;display:flex}label.num input{width:100%}.selbar button{margin-inline-start:4px;padding:1px 6px}.loading{padding:40px}@media (width<=900px){.app{grid-template:"h"48px"m"60vh"l""r"/1fr}}
