html,body,#root{min-height:100%;margin:0}:root{color:#14201a;background:#eef3ef;font-family:Segoe UI,system-ui,sans-serif;line-height:1.45}*{box-sizing:border-box}body{margin:0}.login{background:radial-gradient(circle at 0 0,#d7efe0,#eef3ef 50%,#dfe8e2);place-items:center;min-height:100vh;display:grid}.card{background:#fff;border-radius:16px;width:min(420px,92vw);padding:28px;box-shadow:0 20px 50px #14281e14}.shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}aside{color:#e8f6ef;background:#12352a;flex-direction:column;gap:12px;padding:20px 14px;display:flex}.brand{letter-spacing:.02em;font-size:1.4rem;font-weight:700}aside nav{flex-direction:column;flex:1;gap:6px;margin-top:12px;display:flex}aside button,main button{cursor:pointer;color:#fff;background:#1f6b52;border:0;border-radius:10px;padding:10px 12px;font-weight:600}aside nav button{color:#d7ebe2;text-align:left;background:0 0}aside nav button.active,aside nav button:hover{background:#ffffff1a}button.ghost{color:#d7ebe2;background:0 0;border:1px solid #ffffff40}main button.ghost{color:#12352a;background:#e8eee9}main{padding:28px}.muted{color:#5b6b63}.small{font-size:.85rem}.err{color:#a11}.ok{color:#0a7a45}.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 24px;display:grid}.stat{background:#fff;border-radius:14px;padding:16px}.stat .label{color:#5b6b63;font-size:.85rem}.stat .value{margin-top:6px;font-size:1.8rem;font-weight:700}.form,.item,pre{background:#fff;border-radius:14px;margin-top:12px;padding:16px}label{margin:10px 0 4px;font-weight:600;display:block}input,textarea,select{width:100%;font:inherit;border:1px solid #cfdad3;border-radius:10px;padding:10px 12px}.row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.tabs{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.tabs button{color:#12352a;background:#d9e6df}.tabs button.active{color:#fff;background:#1f6b52}.list{flex-direction:column;gap:10px;margin-top:16px;display:flex}.item{gap:10px;display:grid}pre{font-size:.8rem;overflow:auto}@media (width<=900px){.shell{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}aside{flex-flow:wrap;align-items:center}aside nav{flex-flow:wrap}}
