:root{color:#e8eef4;background:#0d1420;font-family:ui-sans-serif,system-ui,sans-serif;line-height:1.5}*{box-sizing:border-box}html,body{height:100%;margin:0}#app{flex-direction:column;height:100%;min-height:0;display:flex}header{flex:none;padding:.6rem 1rem 0}h1{margin:0 0 .4rem;font-size:1.05rem;font-weight:600}.banner{color:#ffd89a;background:#5a3b12;border-radius:4px;margin:0 0 .5rem;padding:.5rem .75rem}.empty{color:#9aa4b2;flex:1;min-width:0;padding:2rem 1.25rem}#workspace{border-top:1px solid #26303e;flex:1;min-height:0;display:flex}#layers{border-right:1px solid #26303e;flex:0 0 196px;width:196px;padding:10px;font-size:13px;overflow:auto}#layers h2{letter-spacing:.08em;color:#8fa3b8;margin:2px 0 8px;font-size:12px;font-weight:600}#layers label{cursor:pointer;padding:2px 0;display:block}#layers details{border-top:1px solid #26303e;margin-top:14px;padding-top:10px}#layers summary{cursor:pointer;letter-spacing:.08em;color:#8fa3b8;font-size:12px;font-weight:600}#layers details details{border-top:none;margin-top:6px;padding-top:0}#layers details details summary{letter-spacing:.06em;font-size:11px}#layers ul{margin:0;padding:0;list-style:none}#layers li{align-items:center;gap:6px;padding:1px 0;font-size:12px;display:flex}#layers svg{flex:0 0 18px;width:18px;height:12px}#maps{flex:1;min-width:0;min-height:0;display:flex;position:relative}.pane{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}#mapwrap-right{border-left:1px solid #26303e}.pane-label{color:#8fa3b8;flex:none;margin:0;padding:4px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}#maps svg{-webkit-user-select:none;user-select:none;touch-action:none;background:#0d1420;flex:1;width:100%;min-height:0;display:block}#audit-bar{border-top:1px solid #26303e;flex-wrap:wrap;flex:none;align-items:center;gap:.5rem .75rem;padding:.45rem 1rem;font-size:13px;display:flex}#audit-bar[hidden]{display:none}#tooltip{pointer-events:none;z-index:20;color:#dfe6ee;white-space:pre;background:#0a0c12eb;border:1px solid #3a4656;border-radius:6px;padding:6px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;position:fixed}#panel{border-left:1px solid #26303e;flex:0 0 280px;width:280px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;overflow:auto}#panel h2{letter-spacing:.08em;color:#8fa3b8;margin:14px 0 4px;font-size:12px;font-weight:600}#panel section:first-child h2{margin-top:0}dl{grid-template-columns:7.5rem 1fr;gap:.2rem .75rem;margin:0;display:grid}dt{color:#9aa4b2}dd{word-break:break-all;margin:0}dd.viol{color:#e0a06a}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #232b35;padding:2px 6px}tr.hl td{background:#233246}footer{border-top:1px solid #26303e;flex:none;align-items:center;gap:.75rem;padding:.6rem 1rem;display:flex}.file-label{cursor:pointer;color:#8ec8ff}button{color:#e8eef4;cursor:pointer;background:#243044;border:1px solid #3c4d66;border-radius:4px;padding:.35rem .7rem}#library{z-index:30;background:#111926;border-left:1px solid #3c4d66;flex-direction:column;width:min(420px,100%);padding:12px;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden}#library[hidden]{display:none}.library-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.library-head h2{margin:0;font-size:14px}#library-filters{grid-template-columns:1fr 1fr;gap:6px 8px;margin-bottom:8px;font-size:12px;display:grid}#library-filters label{color:#9aa4b2;flex-direction:column;gap:2px;display:flex}#library-filters input,#library-filters select{color:#e8eef4;background:#0d1420;border:1px solid #3c4d66;border-radius:4px;padding:.25rem .4rem}#library-status{color:#8fa3b8;margin:0 0 8px;font-size:12px}#library-list{flex:1;margin:0;padding:0;list-style:none;overflow:auto}#library-list li{cursor:pointer;border:1px solid #26303e;border-radius:6px;margin-bottom:8px;padding:8px}#library-list li:hover{background:#1a2433;border-color:#5b7ea3}#library-list .title{font-size:13px;font-weight:600}#library-list .meta,#library-list .created{color:#9aa4b2;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}#library-list .badges{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}#library-list .badges span{background:#243044;border-radius:4px;padding:1px 6px;font-size:11px}.library-pager{gap:8px;padding-top:8px;display:flex}
