:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:#e5edf7;background:#0b1220;--bg:#0b1220;--panel:#141f31;--sidebar:#101a2b;--border:#28374d;--muted:#93a4ba;--text:#e5edf7;--accent:#20b6ad;--field:#0e1929}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #3ee2cb;outline-offset:2px}.app{display:flex;min-height:100vh}.sidebar{width:250px;flex-shrink:0;padding:25px 14px;background:var(--sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;gap:5px}.brand{display:flex;align-items:center;gap:12px;font-weight:750;letter-spacing:-.4px;margin-bottom:35px}.brand strong{display:block;letter-spacing:2px;font-size:10px;color:var(--accent)}.brand em{font-size:8px;color:white;background:#0e766d;padding:2px 6px;border-radius:9px;font-style:normal}.logo{height:38px;width:38px;display:grid;place-items:center;color:#09191d;background:#3ddacb;border-radius:11px;font-size:33px}.navtitle,.eyebrow{font-size:10px;letter-spacing:1.5px;color:var(--muted);font-weight:700}.navtitle{padding:20px 14px 9px}.nav{background:transparent;border:0;color:var(--muted);padding:13px 14px;text-align:left;border-radius:9px}.nav:hover,.nav.active{background:#1c3546;color:#ecffff}.nav.active{box-shadow:inset 3px 0 #25d3c2}.sidebottom{margin-top:auto;color:var(--muted);font-size:11px;line-height:1.8;padding:20px 14px}.main{flex:1;min-width:0}.topbar{height:80px;border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 36px;gap:14px}.topbar #menuBtn{display:none}.projectline{flex:1;min-width:0}.projectline input{display:block;background:none;border:0;color:var(--text);font-weight:700;width:100%;max-width:420px;padding:4px 0;font-size:16px}.saved{color:#69d0af;font-size:12px}button.primary,button.secondary{border:1px solid transparent;padding:11px 15px;border-radius:9px;font-weight:650}button.primary{background:#13b7a7;color:#061a1b}button.secondary{background:var(--panel);border-color:var(--border);color:var(--text)}button:hover{filter:brightness(1.12)}.page{display:none;padding:34px 36px;max-width:1600px;margin:auto}.page.active{display:block}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.heading h1{font-size:30px;margin:7px 0 8px;letter-spacing:-.8px}.heading p,.muted{color:var(--muted);margin:0;line-height:1.6}.actions{display:flex;gap:10px;flex-wrap:wrap}.end{justify-content:flex-end}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:20px}.metric,.panel{background:var(--panel);border:1px solid var(--border);border-radius:13px}.metric{padding:22px}.metric span,.metric small{display:block;color:var(--muted);font-size:12px}.metric b{display:block;font-size:34px;margin:10px 0 3px;letter-spacing:-1px}.twocol{display:grid;grid-template-columns:1.5fr 1fr;gap:18px}.panel{padding:22px;min-width:0}.panel h2{font-size:16px;margin:0 0 20px}.panelhead{display:flex;justify-content:space-between;align-items:center}.textbtn{border:0;background:none;color:var(--accent);font-weight:600}.preview{min-height:320px;display:grid;place-items:center;overflow:hidden}.preview svg{width:100%;max-height:360px}.resultbox{margin-top:20px;padding:14px;background:var(--field);border-radius:9px;font-size:13px;line-height:1.5}.hint{font-size:12px;line-height:1.6;color:var(--muted);margin-top:14px}label{display:block;color:var(--muted);font-size:12px;margin:16px 0}input:not([type=file]),select,textarea{display:block;background:var(--field);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:11px 12px;width:100%;margin-top:7px}select option{color:var(--text);background:var(--field)}.wide{width:100%}.editor{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:17px}.editorcanvas{padding:0;overflow:hidden}.toolbar{padding:15px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);font-size:12px;color:var(--muted)}#diagram{height:610px;overflow:auto;background-image:radial-gradient(var(--border) .7px,transparent .7px);background-size:23px 23px}#diagram svg{width:100%;min-width:800px;height:610px}.node{cursor:grab}.node:active{cursor:grabbing}.node rect{stroke:#ffffff29;stroke-width:1.5}.node.selected rect{stroke:#f8d36b;stroke-width:3}.link{cursor:pointer}.link.selected{stroke:#f8d36b!important;stroke-width:5}.legend{display:flex;gap:15px;color:var(--muted);padding:15px;font-size:12px}.dot{display:inline-block;height:9px;width:9px;border-radius:50%;margin-right:4px}.blue{background:#3b82f6}.teal{background:#0d9488}.violet{background:#8b5cf6}.red{background:#ef4444}.inspector label{margin:12px 0}.below{margin-top:18px}.simlayout{grid-template-columns:1fr 1.2fr}.empty{padding:55px 20px;color:var(--muted);text-align:center}.pill{display:inline-block;padding:5px 9px;font-size:11px;border-radius:100px;background:#163b37;color:#5de0c8}.danger{background:#482124;color:#ff9ca0}.warning{background:#49381e;color:#f5cb7f}.rowstat{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.rowstat:last-child{border:0}.bad{color:#fb8b94}.good{color:#6fdfba}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--border);padding:12px 10px;vertical-align:top}th{color:var(--muted);font-weight:600}td{overflow-wrap:anywhere}.exportgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.exportgrid button{text-align:left}.checkline{margin:12px 0;line-height:1.6;color:var(--text)}.checkline input{margin-right:10px}footer{padding:25px 36px;color:var(--muted);font-size:11px}.modalback{position:fixed;inset:0;background:#000b;display:grid;place-items:center;z-index:4;padding:14px}.hidden{display:none}.modal{width:min(550px,100%);max-height:90vh;overflow:auto;padding:25px;background:var(--panel);border:1px solid var(--border);border-radius:14px}body.light{--bg:#f3f6fb;--panel:#fff;--sidebar:#f9fbfe;--border:#dbe3ec;--muted:#53657b;--text:#142337;--field:#f3f6fa;--accent:#087f75;background:var(--bg);color:var(--text)}body.light .nav:hover,body.light .nav.active{background:#e5f5f2;color:#075f58}body.light .brand em{color:white}body.light .node text{fill:white}#reportContent h3{margin:26px 0 7px}#reportContent p{line-height:1.7}#reportContent{font-size:13px}@media(max-width:1080px){.sidebar{width:220px}.page{padding:22px}.topbar{padding:15px}.twocol,.editor{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.preview{min-height:260px}}@media(max-width:680px){.sidebar{position:fixed;inset:0 auto 0 0;z-index:3;transform:translateX(-100%);transition:.2s;box-shadow:0 0 20px #0004}.sidebar.open{transform:translateX(0)}.topbar #menuBtn{display:block;background:none;border:0;color:var(--text)}.topbar{height:auto;min-height:80px;flex-wrap:wrap}.topbar .saved{display:none}.heading{align-items:flex-start;flex-direction:column}.metrics{gap:8px}.metric{padding:14px}.metric b{font-size:26px}.page{padding:18px 12px}.exportgrid{grid-template-columns:1fr}}@media print{body{background:white!important;color:#111!important}.sidebar,.topbar,.heading,.exportgrid,footer,.page:not(#reports),#reports>.twocol{display:none!important}.main,.page{display:block!important;padding:0!important}#reports .below{border:0;background:white;color:black;padding:0}#reportContent{color:black}#reportContent table,#reportContent td,#reportContent th{border-color:#aaa;color:black}#reports .below>h2{display:none}}
