:root{font-family:'DM Sans',system-ui,sans-serif;color:#213d36;background:#f5f7f3;font-size:14px;--green:#235847;--muted:#72817a}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;border:0;border-radius:9px;padding:11px 15px;background:transparent;color:inherit;font-weight:600}button:disabled{opacity:.5;cursor:wait}a{color:inherit}aside{width:238px;background:#fff;position:fixed;inset:0 auto 0 0;border-right:1px solid #e1e8df;padding:34px 22px;display:flex;flex-direction:column}.brand{font-family:Manrope,system-ui;font-weight:800;font-size:25px;text-decoration:none;display:flex;align-items:center;gap:10px}.brand b{font-weight:500;color:#80928a}.eyebrow,aside>p{font-size:10px;letter-spacing:1.8px;font-weight:700;color:#8a9990}aside>p{margin:48px 12px 16px}nav{display:grid;gap:8px}nav button{text-align:left;color:#6c7e74;font-weight:500}nav button.active{background:#eaf2e9;color:#235847}footer{margin-top:auto;color:#8a9990;font-size:11px;line-height:2.2}footer a{display:block}.dot{display:inline-block;background:#7cb893;width:6px;height:6px;border-radius:50%;margin-right:5px}main{margin-left:238px;padding:44px clamp(22px,4vw,64px);max-width:1600px}header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:32px}h1,h2,h3{font-family:Manrope,system-ui;letter-spacing:-.6px}h1{font-size:32px;margin:10px 0}p{color:var(--muted);line-height:1.6}header p{margin:0}.header-actions{display:flex;align-items:center;gap:14px}.outline{border:1px solid #d8e2d7;background:#fff}.primary{background:var(--green);color:white}.engine-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.engine{padding:20px;background:#fff;border:1px solid #e0e7df;border-radius:15px}.engine-top{display:flex;align-items:center;justify-content:space-between}.engine-icon{font-size:22px;width:43px;height:43px;display:grid;place-items:center;border-radius:12px}.mysql{background:#fff2df;color:#b97c32}.postgresql{background:#e8f0fc;color:#426fae}.mongodb{background:#e7f2e5;color:#56865a}.redis{background:#fce9e7;color:#b9635d}.badge{font-size:10px;padding:4px 8px;border-radius:20px;background:#eaf2e9;color:#437553;white-space:nowrap}.badge.off{background:#f6e6e3;color:#b25e4d}.engine h3{font-size:15px;margin-bottom:3px}.engine p{font-size:11px;margin:0}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:35px 0 20px;gap:15px}h2{font-size:21px;margin:0}.section-heading p{font-size:12px;margin:6px 0 0}.list{border:1px solid #e0e7df;background:white;border-radius:14px;overflow:hidden}.row{display:flex;align-items:center;padding:18px 20px;gap:14px;border-bottom:1px solid #edf0ea}.row:last-child{border:0}.row .name{flex:1;min-width:0}.row h3{font-size:14px;margin:0 0 5px;overflow-wrap:anywhere}.row p{font-size:11px;margin:0}.row .actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:4px}.row button{padding:8px 9px;font-size:12px}.empty{background:#fff;border:1px dashed #d3dfd2;border-radius:16px;text-align:center;padding:55px 24px;color:#78877e}dialog{border:1px solid #dee7da;border-radius:20px;padding:28px;max-width:min(570px,94vw);width:570px;max-height:90vh;color:#213d36;box-shadow:0 25px 100px #122b3022}dialog::backdrop{background:#16372c66;backdrop-filter:blur(3px)}dialog label{display:block;font-size:12px;font-weight:600;margin:18px 0 8px}input,select,textarea{display:block;width:100%;padding:11px 12px;border:1px solid #d9e2d7;border-radius:8px;margin-top:7px;background:#fbfcfa;color:#213d36}textarea{min-height:100px;resize:vertical;font-family:monospace}.modal-head,.modal-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.modal-footer{justify-content:flex-end;margin-top:22px}.modal-head button{font-size:24px;padding:0 8px}.checks label{display:flex;align-items:center;gap:10px}.checks input{width:auto;margin:0}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f0f4ed;padding:15px;border-radius:10px;font-size:12px;max-height:55vh;overflow:auto}.danger{color:#b76052}#error,#modal-error,#login-error{color:#b35a4b}#error{background:#fceeea;border-radius:9px;padding:12px;margin-bottom:18px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#203e34;color:white;border-radius:10px;padding:13px 22px;z-index:5}#login{max-width:420px}#login .primary{width:100%;margin-top:18px}.help{font-size:12px}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tool{background:white;border:1px solid #e0e7df;border-radius:15px;padding:22px}.tool a{display:inline-block;padding:10px 0;font-weight:600}@media(max-width:1050px){.engine-grid{grid-template-columns:repeat(2,1fr)}header{align-items:flex-start}.header-actions{flex-direction:column;align-items:flex-end}}@media(max-width:720px){aside{position:static;width:auto;padding:18px;border-right:0;border-bottom:1px solid #e1e8df}aside>p,aside footer{display:none}nav{display:flex;overflow:auto;margin-top:18px;gap:4px}nav button{white-space:nowrap;font-size:12px}.brand{font-size:22px}main{margin:0;padding:24px 16px}h1{font-size:25px}.eyebrow{font-size:9px}.row{flex-wrap:wrap;padding:15px}.row .actions{width:100%;justify-content:flex-start}.engine{padding:15px}.tool-grid{grid-template-columns:1fr}.header-actions #identity{display:none}}
